我不知道这两件事是如何工作的,以及它们的输出。如果有更好的方法来做同样的工作。
代码 1:
A = []
s = []
for i in range(0,int(input())):
name = input()
score = float(input())
s.append(name)
s.append(score)
A.append(s)
s = []
print(A)
输出 1:
[['firstInput', 23.33],['secondInput',23.33]]
代码 2:
A = []
s = []
for i in range(0,int(input())):
name = input()
score = float(input())
s.append(name)
s.append(score)
A.append(s)
s.clear()
print(A)
输出 2:
[[],[]]
最佳答案
这是预期的列表行为。 Python 使用引用将元素存储在列表中。当您使用 append 时,它只是在 A 中存储对 s 的引用。当您清除列表 s 时,它也会在 A 中显示为空白。如果要对 A 中的 list 进行独立副本,可以使用 copy 方法。
关于python - 在另一个列表中附加一个列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57016009/