私は 'fwd'の最初の列のint値を新しいdict 'fragment_dict'に転送しようとしていますが、この型エラーはコードを実行したときに表示されました: "'int'オブジェクトは添字付きではありません。私は何が問題なのだろうか。int値をdictに転送する。 TypeError: 'int'オブジェクトはサブスクリプトできませんか?
fwd = {1:1, 2:10, 3:100, 5:10000, 103: 103, 204:204, 205:205, 387:387}
fragment_dic = {}
count = 0
for fragment_num in range(0, 388, 1):
for pos in range(1,101, 1):
if fwd == int:
print()
genomic_position = fragment_num*100 + pos
count += fwd[genomic_position]
elif fwd != int:
pass
fragment_dic[fragment_num] = count
count = 0
for i in fwd:
fwd[fragment_dic] = i[0]
このコードはまったく意味がありません。 'fwd'はdictです。決して整数ではありません。それがあったとしても、 'fwd == int'はオブジェクトがintであることをチェックする方法ではありません(isinstance(fwd、int)を意味します)。 「パスする」エリフは全く無意味です。実際のエラーはdictを反復処理するとキーが得られるので、 'i'がキーです。 –
完全なエラーメッセージ、特に 'fwd [fragment_dic] = i [0]'の行を表示するビットを含めると、エラーメッセージが表示されます。 'int'なので' i'の添字にすることはできません。それは 'fwd'の鍵の一つなので、あなたが期待しているものです。 – Duncan
エラーにスタックトレースが含まれていましたか?問題がどの行にあるのかを教えてくれましたか? – khelwood