gpt4 book ai didi

Python append 搞笑

转载 作者:行者123 更新时间:2023-11-28 19:41:33 25 4
gpt4 key购买 nike

<分区>

我写了一个 python 代码来解决一个难题。它没有按预期工作。所以在调试时我看到了一些非常奇怪的东西。行是列表的列表。 append 1 to single row[n] 追加到行内的所有列表!

def trap( height):
row = []

for index, i in enumerate(height):
if i == 0 and len(row) == 0:
continue
else:
if(i > len(row)):#time for a new row
#to old rows append 0 below
for j in range(0, len(row)):
row[j].append(0)
row = row + [[0]] * (i - len(row))
else:
for j in range(0,i):
row[j].append(0)
#PROBLEMATIC CODE START
for jo in range(i,len(row)):
if(index == 1):
print("jays are",row)
print("jo is",jo, row[jo])
row[jo].append(1)
#PROBLEMATIC CODE END (I GUESS?)


print(row) #print this, it gives an idea


trap([2,0])

当我独立尝试这个时,它工作正常,请参阅:

row = [[0],[0]]
index = 1

for jo in range(0,len(row)):
if(index == 1):
print("jays are",row)
print("jo is",jo, row[jo])
row[jo].append(1)
print(row)

有问题的代码已在 python 中标记为注释 #PROBLEMATIC CODE START#PROBLEMATIC CODE END。使用 [2,0]

调用 trap()

行变量应该是[[0,1],[0,1]]但是行变量即将到来 [[0,1,1],[0,1,1]]

我已经在这里工作了好几个小时了!我只是不明白为什么 .append() 会附加到行内的所有列表,但是当我尝试使用较小的代码时它会起作用。请帮助我并指导我

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com