トップページ > プログラム > 2014年08月31日 > 4zKdmr70

書き込み順位&時間帯一覧

39 位/193 ID中時間01234567891011121314151617181920212223Total
書き込み数0200000000000000000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
269
くだすれPython(超初心者用) その24

書き込みレス一覧

くだすれPython(超初心者用) その24
269 :デフォルトの名無しさん[sage]:2014/08/31(日) 01:16:31.29 ID:4zKdmr70
>>265
> 例えば、定数は、ローカル変数宣言代わりにデフォルト引数に書いておくと、
> 呼び出し毎に毎回変数へ代入される処理は省略される。

それはわかるけど、そのせいで
> この種のバグがよく初心者プログラマに噛み付きます。
みたいな状況になるのとどっちが大事なのかなあ、って思ったりします。

> また、こうすることで関数の結合度が弱まり、単体テストが書きやすくなるといった利点もあります。

ごめんなさい、私のようなあくまでプライベートでPython使ってるだけの人間にはその意味がよくわからないです。

単なる揚げ足取りで実際にはないケースかもかもしれないけれど、
>>237 にしても、
くだすれPython(超初心者用) その24
270 :269[sage]:2014/08/31(日) 01:23:25.79 ID:4zKdmr70
途中で書き込んじゃった。

単なる揚げ足取りで実際にはないケースかもかもしれないけれど、
>>237 にしても、
>>> class Test:
... def __init__(self,a):
... self.a = a or []

>>> L = ['a']

>>> x = Test(a=L)

>>> y = Test(a=L)

>>> x.a
['a']

>>> y.a
['a']

>>> x.a.append('c')

>>> x.a
['a', 'c']

>>> y.a
['a', 'c']

ってなっちゃうよね。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。