当我不知道数组2D的大小时,如何在python中创建数组2D:
myList =[[1,2,3],
[1,3],
[1,2,8],
.....]
我的代码是:
myList=[[]]
for i in range(0,len(data)):
for k in range(0,len(data)):
if (true conditional):
myList[i].append(k)
我的错误:
IndexError:列表索引超出范围
答案 0 :(得分:0)
你的循环看起来有点滑稽。如果您想以i
和k
为整数进行循环,请尝试:
myList=[[]]
for i in range(len(data)):
for k in range(len(data)):
if (true conditional):
myList[i].append(k)
目前,for i in len(data):
正在尝试迭代len(data)
的返回值,这是一个数字,data
的长度,而不是列表。
答案 1 :(得分:0)
我对你的问题不是很清楚。但是,你可以试试这个:
myList = []
for i in xrange(len(data)):
myList.append([k for k in len(data) if true-condition])
答案 2 :(得分:0)
我可以解决我的问题
myList=[]
for i in range(0,len(data)):
myList.append([])
for k in range(0,len(data)):
if (true conditional):
myList[i].append(k)