gpt4 book ai didi

python - 将相同的字符串重复添加到列表中以使其成为元组

转载 作者:太空宇宙 更新时间:2023-11-04 01:32:49 25 4
gpt4 key购买 nike

我正在尝试将一个字符串和一系列数字作为元组组合到一个列表中。

例如,开始于:

a = [12,23,45,67,89]  
string = "John"

我想把它变成:

tuples = [(12,'John'),(23,'John'),(45,'John'),(67,'John'),(89,'John')]

我试过:

string2 = string * len(a)
tuples = zip(a, string2)

但这返回了:

tuples = [(12,'J'), (23,'o'), ...]

最佳答案

如果你想使用 zip(),那么在相乘之前为你的字符串变量创建一个列表:

string2 = [string] * len(a)
tuples = zip(a,string2)

string * len(a) 创建一个长字符串,然后 zip() 对其进行迭代以提取单个字符。相反,通过将列表相乘,您将得到一个列表,其中 len(a) 单独引用了 string 值;然后每次迭代都会给你 string

你也可以使用 itertools.repeat()重复给你string:

from itertools import repeat

tuples = zip(a, repeat(string))

这避免了创建一个可能非常大的新列表对象。

关于python - 将相同的字符串重复添加到列表中以使其成为元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12557078/

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