関数
公式サイト:
使い方
参考:
メソッドとスタティックメソッドの違いを検証してみた – Qiita
def / return – 関数を定義/呼び出し | note.nkmk.me
デフォルト値
参考:
可変長引数/キーワード引数
ドキュメント:
参考:
可変長引数 (*args, **kwargs) の使い方 | note.nkmk.me
Keyword (Named) Arguments in Python: How to Use Them | Trey Hunner
Normal arguments vs. keyword arguments – Stack Overflow
why no spaces around ‘=’ in keyword argument or a default parameter value? – Stack Overflow
Unpacking dictionary with integer keys? – Stack Overflow
proper name for python * operator? – Stack Overflow
return 文
ドキュメント:
return 文 | Python 3.x ドキュメント [公式]
メソッドの一覧を確認する
dir
関数にオブジェクトを与えて、属性及びメソッドの一覧を表示する。
>>> dir(obj)
ドキュメント:
参考:
dir 関数でパッケージ/モジュールの定義を調べる | 鎖プログラム
オブジェクトのメソッド一覧的なものを取得する | インストラクターのネタ帳
dir / inspect – ライブラリの属性/メソッド一覧を調べる方法 | よちよちpython
inspect.signature
ドキュメント:
inspect.signature | Python 3.x ドキュメント [公式]
参考:
Introspecting callables with the Signature object| Python 3.x documentation [Official]
Introspecting arguments from the constructor function __init__ in Python – Stack Overflow
呼び出し元関数名を取得する
def print_caller():
import sys
caller = sys._getframe().f_back.f_code.co_name
print(f"Called from: '{caller}'")
Code language: Python (python)
参考:
How to get the caller’s method name in the called method? – Stack Overflow
コールスタックを取得する
ドキュメント:
inspect | Python 3.x ドキュメント [公式]
仕組み
TL;DR
ミュータブルなコレクションを引数として渡した場合、関数やメソッドの内部で値の変更が可能である。
参考:
関数の引数は値渡し?参照渡し? | やさしい Python 入門