gpt4 book ai didi

python - 列表理解的多重赋值

转载 作者:行者123 更新时间:2023-12-05 08:20:31 25 4
gpt4 key购买 nike

我想知道我是否可以通过一个列表理解来分配多个列表。我不知何故无法理解语法。

所以,与其做...

xs = [item.km for item in data]
ys = [item.price for item in data]

我想做...

xs, ys = [km, price for km, price in data]
# or...
xs, ys = [item.km, item.price for item in data]

但这会抛出一个语法错误,而且我似乎找不到错误。

即使看起来很明显,数据如下......

for elem in data:
print elem
# outputs (this is a namedtuple) :
# mileage(km=22899.0, price=7990.0)
# mileage(km=48235.0, price=6900.0)
# mileage(km=54000.0, price=7990.0)
# mileage(km=60949.0, price=7490.0)
...

最佳答案

如果我正确理解你的结构,你需要 zip() 和 star-argument 来转置你的数据:

xs, ys = zip(*[(km, price) for km, price in data]) 

关于python - 列表理解的多重赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48461234/

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