我只是想通过制作一个列表列表来创建数据库,其中D中的每个项目都是使用line.split分割的数字列表
D = []
f1 = open("test.txt",'r')
for line in f1:
trans = line.split()
D.append[trans]
这就是test.txt中的内容
12 34 34 324 32432 4
23 432 43 557 56 8
124 234 64 457 56
当我尝试这个时,我得到了这个错误
Traceback (most recent call last):
File "practice.py", line 6, in <module>
D.append[trans]
TypeError: 'builtin_function_or_method' object has no attribute '__getitem__'
有人可以解释我做错了什么,以及如何正确处理这个问题?
答案 0 :(得分:5)
尝试:
D.append(trans)
这将调用列表对象append
的方法D
。当您D.append[...]
时,您尝试索引append
属性。但该属性是一个函数/方法,因此您无法将其编入索引。
答案 1 :(得分:2)
使用:
stock.picking
答案 2 :(得分:1)
尝试
D = []
f1 = open("test.txt",'r')
for line in f1.getlines():
trans = line.split()
D.append(trans) # with () instead of [] since this is a function call and not an index
你也可以说
for line in f1:
print f1
看看f1究竟是什么。
答案 3 :(得分:0)
你的问题在这里:
D.append[trans]
那是试图将属性trans分配给属性append,这是一个方法。你想要
D.append(trans)