将相同的变量添加到元组列表中 [英] adding the same variable to a list of tuples

查看:29
本文介绍了将相同的变量添加到元组列表中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下 3 个列表和一个值 (country[i]),我想将相同的 country[i] 添加到所有可用的元组中:

name = ["a", "b", "c"]年龄 = [1, 2, 3]city = ["aaa", "bbb", "ccc"]国家[i]

其中 country[i] 等于美国",我使用了以下代码:

user_info = [tuple((t,)) for t in zip(name, age, city, country[i])]

执行时我得到以下结果:

[(('a', 1, 'aaa', 'U'),), (('b', 2, 'bbb', 'n'),), (('c', 3, 'ccc', 'i'),)]

虽然我想要的是:

[('a', 1, 'aaa', 'United States'), ('b', 2, 'bbb', 'United States'), ('c', 3, 'ccc', '美国)]

解决方案

您可以手动"将其添加到每个项目中:

v = (country[i], )[t + v for t in zip(name, age, city)]

演示:

<预><代码>>>>国家 = [美国"]>>>我 = 0>>>名称 = ["a", "b", "c"]>>>年龄 = [1, 2, 3]>>>city = ["aaa", "bbb", "ccc"]>>>v = (国家[i], )>>>[t + v for t in zip(name, age, city)][('a', 1, 'aaa', '美国'), ('b', 2, 'bbb', '美国'), ('c', 3, 'ccc', '美国')]

I've the below 3 lists and a value (country[i]) and i want to add the same country[i] to all tuples available:

name = ["a", "b", "c"]
age = [1, 2, 3]
city = ["aaa", "bbb", "ccc"]
country[i]

where country[i] equals to "United States", And i used the following code:

user_info = [tuple((t,)) for t in zip(name, age, city, country[i])]

When executed i got the following result:

[(('a', 1, 'aaa', 'U'),), (('b', 2, 'bbb', 'n'),), (('c', 3, 'ccc', 'i'),)]

While what i want is:

[('a', 1, 'aaa', 'United States'), ('b', 2, 'bbb', 'United States'), ('c', 3, 'ccc', 'United States)]

解决方案

You can add it to each of the item "manually":

v = (country[i], )
[t + v for t in zip(name, age, city)]

Demo:

>>> country = ["United States"]
>>> i = 0
>>> name = ["a", "b", "c"]
>>> age = [1, 2, 3]
>>> city = ["aaa", "bbb", "ccc"]
>>> v = (country[i], )
>>> [t + v for t in zip(name, age, city)]
[('a', 1, 'aaa', 'United States'), ('b', 2, 'bbb', 'United States'), ('c', 3, 'ccc', 'United States')]

这篇关于将相同的变量添加到元组列表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆