gpt4 book ai didi

python - 在 python 中的列表中交换元组/列表中的值?

转载 作者:太空狗 更新时间:2023-10-29 19:34:15 24 4
gpt4 key购买 nike

我有一个这样的元组列表:

[('foo','bar'),('foo1','bar1'),('foofoo','barbar')]

在 python 中(在非常低的 cpu/ram 机器上运行)交换这样的值的最快方法是什么...

[('bar','foo'),('bar1','foo1'),('barbar','foofoo')]

我目前正在使用:

for x in mylist:
self.my_new_list.append(((x[1]),(x[0])))

有没有更好或更快的方法???

最佳答案

你可以使用 map :

map (lambda t: (t[1], t[0]), mylist)

或者列表理解:

[(t[1], t[0]) for t in mylist]

当需要 lambda 时,列表推导式是首选,据说比 map 快得多,但是请注意,列表推导式有严格的评估,如果您担心内存,它会在绑定(bind)到变量后立即评估消耗使用生成器代替:

g = ((t[1], t[0]) for t in mylist)
#call when you need a value
g.next()

此处有更多详细信息:Python List Comprehension Vs. Map

关于python - 在 python 中的列表中交换元组/列表中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13384841/

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