[解決済み] AttributeError: Pythonで属性を設定できない
2023-05-31 04:04:17
質問
以下は私のコードです。
N = namedtuple("N", ['ind', 'set', 'v'])
def solve()
items=[]
stack=[]
R = set(range(0,8))
for i in range(0,8):
items.append(N(i,R,8))
stack.append(N(0,R-set(range(0,1)),i))
while(len(stack)>0):
node = stack.pop()
print node
print items[node.ind]
items[node.ind].v = node.v
最後の行で、私は
items[node.ind].v
の値を
node.v
というエラーが出てしまいます。
"AttributeError: can't set attribute"
何が問題なのか分かりませんが、きっと構文に基づいて
node.v+=1
のようなステートメントを使用しても同じエラーが表示されます。私はPythonの初心者なので、上記の変更を可能にするための方法を提案してください。
どのように解決するのでしょうか?
items[node.ind] = items[node.ind]._replace(v=node.v)
(注意: _replace関数の先頭のアンダースコアのために、この解決策を使用することを躊躇しないでください。特にnamedtupleの場合、いくつかの関数は先頭のアンダースコアを持っていますが、これはプライベートであることを示すためのものではありません。)
関連
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] ファイルのコピー方法について教えてください。
-
[解決済み] Pythonで例外を手動で発生(スロー)させる
-
[解決済み] Pythonでオブジェクトが属性を持つかどうかを知る方法
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】Pythonに三項条件演算子はありますか?
-
[解決済み] PILからopenCVフォーマットへの変換
-
[解決済み] CSVデータを処理する際、1行目のデータを無視する方法を教えてください。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pythonのクラスはなぜオブジェクトを継承するのですか?
-
[解決済み] Pandasのデータフレームでタプルの列を分割するにはどうしたらいいですか?
-
[解決済み] PythonでファイルのMD5チェックサムを計算するには?重複
-
[解決済み] Pythonのargparseを使った隠し引数の作成
-
[解決済み] ファブリック経由でデプロイユーザとしてvirtualenvを有効化する
-
[解決済み] Pythonで0xを使わずにhex()を使うには?
-
[解決済み] Cythonのコードを含むPythonパッケージはどのように構成すればよいのでしょうか?
-
[解決済み] subprocess.run()の出力を抑制またはキャプチャするには?
-
[解決済み] Pythonでランダムなファイル名を生成する最良の方法
-
[解決済み] データクラスとtyping.NamedTupleの主な使用例