Pythonのお勉強 Part68at TECHPythonのお勉強 Part68 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト509:デフォルトの名無しさん 22/10/28 10:42:02.56 6fPFyEs10.net 統一教会が追い詰められてきたから焦ってるんだろ 510:デフォルトの名無しさん 22/10/30 03:06:48.95 9F5gJDkR0.net Python初心者ですが新事実を発見しました クラスのメンバ変数はデフォルト値が設定してあっても コンスタントラクタで初期化しないかぎり、別に生成したクラスobjと共有されてるようです リストとか特定の変数限定かもしれないですが 511:デフォルトの名無しさん 22/10/30 03:14:13.07 9F5gJDkR0.net 具体的にこれですが class A : L = [] def __init__(self): pass class X : L = [] def __init__(self): self.L = [] a = A() a.L.append(7) b = A() print(b.L) # 新規生成なのに値が入ってる a = X() a.L.append(7) b = X() print(b.L) # 正常 print(a.L) # 正常 512:デフォルトの名無しさん 22/10/30 04:02:03.41 2IVXofav0.net それはメンバ変数でなくてクラス変数だからだよ 513:デフォルトの名無しさん 22/10/30 04:51:48.91 9F5gJDkR0.net そういうことか Pythonでクラス変数とインスタンス変数を取り違えてハマった https://qiita.com/7shi/items/d37493c58a8bb8d7beed 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch