SUPPORT UKRAINE
- Your indifference to the act of cruelty can thrive rogue nations like Russia -
タグ
python
を含むブログ一覧
【 Effective Python, 2nd Edition 】keyword-only arguments (キーワード指定のみ引数) と positional-only arguments (位置指定のみ引数) を使いこなして、コードの読解性と将来的な拡張性を高めよう!
Published 2020年6月22日20:28 by mootaro23
Python では、関数を呼び出す際にキーワード引数 (keyword arguments) を利用することで、引数の役割が明確になりコードの読解性、メンテナンス性が高まったり、将来的に、関数側で新たにデフォルト値を設定したオプションパラメータを追加して下位互換性を維持したまま機能の拡張ができるようになったり、非常に多くの利点を享受することができます。
ここで、割り算の答えを返す単純な…
【 Effective Python, 2nd Edition 】クロージャー関数 ( closure function ) の変数スコープについて - 参照と代入における違いを理解してますか?
Published 2020年6月21日8:21 by mootaro23
数値で構成されるリストの並べ替えをする際に、あるグループに属する数値を前方に配置したいとします。
このようなロジックは、ユーザーにメッセージ等を表示する際、重要度の高いものから表示したい場合などに有効です。
実装する一般的な方法は、リストの sort() の key パラメータに、並べ替えに利用する値を提供するためのヘルパー関数を渡すことです。
def sort_p…
比較特殊関数を実装していないオブジェクトに対する sort() の key パラメータを利用した並べ替え
Published 2020年6月20日8:27 by mootaro23
ご存知のように list タイプでは sort() が提供されていて、デフォルトでは要素が昇順に並べ替えられます。
numbers = [93, 86, 11, 68, 70]
numbers.sort()
print(numbers) # [11, 68, 70, 86, 93]
sort() はほぼ全ての組み込みタイプに適用可能です。
では、オブジェクトに対して…
【 Effective Python, 2nd Edition 】* 書式 (starred expression) をアンパックで活用しよう!
Published 2020年6月16日17:42 by mootaro23
通常のアンパックでは、事前にアンパック対象のシーケンスの長さを知っている必要があります。
ですから、次のようなリストから高得点上位2つだけをアンパック構文で取得しようとするとエラーになります。
scores = [78, 93, 61, 94, 88, 59, 71, 98, 66]
scores_descending = sorted(scores, reverse=Tr…
【 Effective Python, 2nd Edition 】Python 3.8 で導入された assignment expression (walrus operator, :=) について
Published 2020年6月12日22:18 by mootaro23
assignment expression (代入書式?代入演算子?) では walrus operator (:=) が使用されます。
直訳すると「セイウチ演算子」。:= がおメメとキバに見えるからとか。
端的に言うと、変数へ値を割り当て、その変数を評価する、という2ステップを1度に済ませる、ということです。
以下、活用場面を見ていきましょう。
今日はレモネード…
【Python 雑談・雑学】 関数への引数の渡し方・受け取り方 - *args、**kwargs を利用した引数の渡し方、パラメータの受け取り方、総復習 -
Published 2020年6月11日16:37 by mootaro23
ちょっと混乱している方がいるようなので。
今回は特に **kwargs を中心に整理してみます。
・名前付き引数 (named arguments) を辞書として受け取る ============
def named1(**kwargs):
print(f"named1 => {kwargs}")
named1(name="Nana", age=26)
# n…
【 Effective Python, 2nd Edition 】dictionary comprehension の使い道
Published 2020年6月11日7:01 by mootaro23
リスト内包表記 (list comprehension) は使う場面も多いけれど、辞書内包表記 (dictionary comprehension) は使ったことがない、という方も多いのでは、
実際、使う場面はほぼほぼないかもしれません。
そこで、辞書内包表記を利用することでコード全体がスッキリする場面、をご紹介。
下記のようなデータ構造を利用しているとします。
…