1. ホーム
  2. python

[解決済み] _csv.reader' オブジェクトは添え字を付けることができません。

2022-02-13 23:35:08

質問

pythonのcsvモジュールで問題があります。

これは、私が書いたcsvをパースするためのコードです。

def parse(data):
    data_delim = data.split("\n")
    data_list = csv.reader(data_delim)
    return data_list

私が遭遇している問題は以下の通りです。

print(data_list[Enum.check_name(skill)][1])

このエラーを投げます

_csv.reader' object is not subscriptable

下にゲテモノ的な解決策があるのですが、上のコードと似たようなものを使いたいのですが、どなたか解決策をお持ちの方はいらっしゃいませんか?

i = 0
for a in data_list:
    if i == Enum.check_name(skill):
        print(a[1])
    i += 1

解決方法は?

エラーメッセージにあるように、csvリーダーはインデックス作成に対応していません。 で返される値は csv.reader はリストではなく、行に対するイテレータです。

もし必要なら、すべての行のリストを data_list = list(csv.reader(data_delim)) . そして、そのリストを他のリストと同じようにインデックス化することができます。