python オブジェクトはアイテムの割り当てをサポートしない
2022-02-18 19:44:03
まずは以下のコードから。
class Animal(object):
def __init__(self, name):
self.name = name
a1 = Animal("panda")
a1['age'] = 12
実行が
a1['age'] = 12
エラーの報告
トレースバック (最も最近の呼び出し):
ファイル "test.py", 行 13, in <\module>
a1['age'] = 12
TypeError: 'Animal'オブジェクトはアイテムの割り当てをサポートしていません。
は、a1 オブジェクトをこの方法で割り当てることができないことを示します。
回避策
クラスに __setitem__ メソッドを定義する必要があります。
class Animal(object):
def __init__(self, name):
self.name = name
def __setitem__(self, k, v):
self.k = v
def __str__(self):
return "name:%s, %s" % (self.name, self.k)
a1 = Animal("panda")
a1['age'] = 12
print a1
再度実行すると
を出力します。
名前:パンダ、12歳
名前と先ほど割り当てた12を印刷します。
関連
-
[解決済み】python "TypeError: 'numpy.float64' object cannot be interpreted as an integer" (タイプエラー: 'numpy.float64' オブジェクトは整数として解釈できません)。
-
[解決済み] バイトをstrに連結できない
-
[解決済み] Pythonのmatplotlibで日付をX軸にプロットする
-
[解決済み] __init__() に必要な位置の引数が 1 つ不足している
-
[解決済み] PythonでスレッドIDを取得する方法は?
-
[解決済み] Python ValueError: JSONオブジェクトをデコードできませんでした
-
[解決済み] python エラー: pylab という名前のモジュールがありません。
-
[解決済み] sdl2 - ImportError: DLL のロードに失敗しました。CRITICAL] [App] Window を取得できません、中止してください。
-
[解決済み] os.environ.setdefaultの使用は安全ですか?
-
[Python3 ネットワークプログラミング】ConnectionRefusedError: [Errno 111] 接続が拒否されました
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】DataFrameのコンストラクタが正しく呼び出されない!エラー
-
[解決済み】 "int(time.time()*1000.0) & 0x7FFFFFFF" の "& 0x7FFFFF" とはどういう意味か?
-
[解決済み】Python TypeError: object.__format__ に渡される空でないフォーマット文字列
-
PygameのDraw関数の具体的な使用方法
-
[解決済み】Pythonで日付に日数を足す
-
[解決済み] Random モジュールが動作しない。ValueError: randrange() の範囲が空です (1,1, 0)
-
[解決済み] バックスラッシュでエスケープされた文字列のエスケープを解除するには?
-
[解決済み] lib 'ODBC Driver 13 for SQL Server'を開くことができないのですが?Symリンクの問題か?
-
Pythonによる2次元辞書
-
ValueError: 解凍する値が足りない (期待値 3、取得値 2)