gpt4 book ai didi

python - 从 Python 中的规则间隔列表中提取整数项

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

我试图在 python 中提取 csv 列表中的每个整数,它可以采用不同的形式:

[[0, 3], [1, 2], [2, 1], [3, 0]]

[[0, 0, 3], [0, 1, 2], [0, 2, 1], [0, 3, 0], [1, 0, 2], [1, 1, 1], [1, 2, 0], [2, 0, 1], [2, 1, 0], [3, 0, 0]]

甚至只是

[[2]]

我想做的是从每个元素中提取每个整数,并将其附加到 x 即对于我的第一个列表生成 [x03, x12, x21, x30] ,或者对于第二个产生 [x003, x021, x021, x030, x102, ....]

我一直在做这个

  for i in range(len(gmomvec)):
string=str(gmomvec[i])
num=string[1::3]
mm.append(Symbol('x'+num))
]

其中 gmomvec 是列表的名称,mm 是我希望获得的结果列表。但是我刚刚意识到,对于每个列表元素中有 2 个整数的情况,这给了我不正确的结果。有谁知道我如何使用另一个函数来做我想做的事?

谢谢!

最佳答案

使用列表理解str.join()

>>> lis = [[0, 3], [1, 2], [2, 1], [3, 0]]
>>> ["x" + "".join(map(str,x)) for x in lis]
['x03', 'x12', 'x21', 'x30']

>>> lis = [[0, 0, 3], [0, 1, 2], [0, 2, 1], [0, 3, 0], [1, 0, 2], [1, 1, 1], [1, 2, 0], [2, 0, 1], [2, 1, 0], [3, 0, 0]]
>>> ["x" + "".join(map(str,x)) for x in lis]
['x003', 'x012', 'x021', 'x030', 'x102', 'x111', 'x120', 'x201', 'x210', 'x300']

map(str, sequence)str 函数应用于序列的每个元素,以便可以使用 str.join 连接它们

>>> map(str, [1,2,3])
['1', '2', '3']

关于python - 从 Python 中的规则间隔列表中提取整数项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16795042/

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