我是python的新手,正在尝试读取文本文件。
这是我的代码:

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


我的datatypes.txt文件包含:

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


我正在尝试在上述文件中写入数据类型。但是,当我尝试执行此操作时,出现以下错误:“ ValueError:字典更新序列元素#0的长度为4;必须为2。” ...我是朝正确的方向前进还是完全迷失了方向?
希望有人能为我提供帮助...谢谢

最佳答案

该文件不是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}

关于python - ValueError:字典更新序列元素#0的长度为4; 2是必需的(python),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13853408/

10-09 06:17