0

私はPythonが初めてで、テキストファイルを読み込もうとしています。これは私のコードです:

import csv
csvreader = csv.reader(open('datatypes.txt', 'rb'))
dataTypes = dict(csvreader)

そして、私のdatatypes.txtファイルには以下が含まれています:

[('string',6), ('varchar',7)]

上記のファイルにデータ型を書き込もうとしています。ただし、これを試してみると、「ValueError: 辞書更新シーケンス要素 #0 の長さは 4; 2 が必要です」というエラーが表示されます....正しい方向に進んでいるか、完全に失われていますか?? 誰かが私のためにこれに光を当てることができれば幸いです...ありがとう

4

1 に答える 1

1

そのファイルは CSV ではありません。試してくださいast.literal_eval

import ast

with open('datatypes.txt', 'r') as f:
    dataTypes = dict(ast.literal_eval(f.read()))
    # dataTypes: {'varchar': 7, 'string': 6}
于 2012-12-13T05:24:31.597 に答える