gpt4 book ai didi

python - 如何将包含两个变量的列表 append 到另一个已经包含该列表但具有不同值的列表? Python

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:04:18 26 4
gpt4 key购买 nike

我正在做我的编程类(class)作业,我遇到了一个问题

gamecentre1 = [winnerscore, winner]


organise = []

organise.extend([gamecentre1])

from operator import attrgetter, itemgetter

sorted(organise, key= itemgetter(0))

print(organise)


f = open("gameresults.txt","w")

f.write("Here are the winners of the games: \n")

f.write(str(organise))

f.write("\n")

f.close()

我正在尝试将两个变量添加到一个列表中,然后将该列表添加到另一个列表中。然后,我想根据子列表的整数变量(整数是 winnerscore)组织更大的列表。但是,问题是我无法正确组织它们,我担心因为我必须将具有相同变量的相同列表 append 到更大的列表而不覆盖其中的现有列表,所以更大的列表只会一遍又一遍地具有相同的值。

这是因为我想在每次程序运行时存储变量,而不是删除上一个游戏的变量值。

我该怎么做?

最佳答案

I'm trying to add two variables to a list, and add that list to another list. Then, I want to organise that larger list based off of the integer variable of the sublist

听起来你想要的是一个嵌套列表 - 一个由小列表组成的大列表,这样每个小列表都独立于其他列表。您的代码中目前阻碍您完成此操作的关键问题是 extend() - 这本质上是列表连接,这不是您想要的。例如,

x = [1, 2]
x.extend([3, 4]) # x == [1, 2, 3, 4]

相反,请尝试使用 append(),它将其参数添加为列表中的下一个值。例如:

x = []
x.append([3, 4]) # [[3, 4]]
x.append([1, 2]) # [[3, 4], [1, 2]]

现在在上面的例子中,我们有一个列表x,它有两个元素长,每个元素本身就是一个包含两个元素的列表。现在我们可以将其插入 sort:

y = sorted(x, key=lambda i: i[0])
print(y)
# [[1, 2], [3, 4]]

(lambda i: i[0] 实际上只是您使用 itemgettr(0) 进行操作的一种更优雅的方式 - 它是一个 lambda,一个小型内联函数,它接受一个参数 i 并返回 i 的第 0 个元素。在本例中,传入的 i 是较小的列表之一)。

现在您有了一个由较小列表组成的排序列表,您可以对它们做任何需要的事情。

关于python - 如何将包含两个变量的列表 append 到另一个已经包含该列表但具有不同值的列表? Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53548072/

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