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 回答