gpt4 book ai didi

python - 将混合数据类型的元组列表转换为所有字符串

转载 作者:太空狗 更新时间:2023-10-30 02:11:26 27 4
gpt4 key购买 nike

我有这个列表;

List=[(1, 'John', 129L, 37L), (2, 'Tom', 231L, 23L)]

我想把它转换成这样;

OutputList = [('1', 'John', '129', '37'), ('2', 'Tom', '231', '23')]

列表中的所有数据类型都将变成字符串。我尝试了 [str(i) for i in List] 但结果不对。解决这个问题的正确方法是什么?

我正在使用 python 2.7

最佳答案

使用 nested list comprehension (generator expression 内):

>>> lst = [(1, 'John', 129L, 37L), (2, 'Tom', 231L, 23L)]
>>> [tuple(str(x) for x in xs) for xs in lst]
[('1', 'John', '129', '37'), ('2', 'Tom', '231', '23')]

或使用 map代替生成器表达式:

>>> [tuple(map(str, xs)) for xs in lst]
[('1', 'John', '129', '37'), ('2', 'Tom', '231', '23')]

上面的列表理解类似于下面的嵌套 for 循环:

>>> result = []
>>> for xs in lst:
... temp = []
... for x in xs:
... temp.append(str(x))
... result.append(tuple(temp))
...
>>> result
[('1', 'John', '129', '37'), ('2', 'Tom', '231', '23')]

关于python - 将混合数据类型的元组列表转换为所有字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22113668/

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