我想创建一个关联数组,其中包含从文件中读取的值。我的代码看起来像这样,但它给我一个错误,说我不能指标必须是整数。
谢谢=]
for line in open(file):
x=prog.match(line)
myarray[x.group(1)]=[x.group(2)]
答案 0 :(得分:13)
myarray = {} # Declares myarray as a dict
for line in open(file, 'r'):
x = prog.match(line)
myarray[x.group(1)] = [x.group(2)] # Adds a key-value pair to the dict
答案 1 :(得分:4)
Python中的关联数组称为映射。最常见的类型是dictionary。
答案 2 :(得分:1)
因为数组索引应该是整数
>>> a = [1,2,3]
>>> a['r'] = 3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not str
>>> a[1] = 4
>>> a
[1, 4, 3]
x.group(1)应该是整数或
如果您使用地图首先定义地图
myarray = {}
for line in open(file):
x=prog.match(line)
myarray[x.group(1)]=[x.group(2)]