我不想在列表中找到列表,而只是想添加零但不知道如何。见代码
def myconv(x,h):
q=[]
print(h)
for i in range(len_h):
q.append(h[len_h-1-i])
print(q)
q.insert(0,([0]*len_h)) #I want this to add just plain zeros to the array... not an array insdie an
#like it is doing here
q.insert(len(q)+1,(0]*len_h))
print(q)
print(myconv([6,7,8,9],[1,2,3,4,5,6,7,8,9,0]))
答案 0 :(得分:1)
您想使用+
,例如[0, 0, 0] + [2, 1, 3] == [0, 0, 0, 2, 1, 3]
,将数组连接到第一个数组。否则,您需要一次插入(或追加)一个项目。
答案 1 :(得分:0)
演示列表乘法的工作原理:
>>> [0]*2
[0, 0]
>>> [0]*5
[0, 0, 0, 0, 0]
我更喜欢就地扩展操作。只是没有分配给它,因为像大多数Python就地方法一样,它返回None。
>>> l2.extend([0]*5)
>>> l2
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 0]
答案 2 :(得分:0)
您有两种方法:
q = [0]*len_h + q
或
q[0:0] = [0]*len_h
答案 3 :(得分:-1)
q.insert(0,([0]*len_h))
这会在列表中创建一个列表,因为[0]*len_h
会创建一个新列表。然后将此数组插入q
。相反,将每个元素插入q
而不创建新列表。
for i in range(len_h):
q.insert(0, 0)