gpt4 book ai didi

python - 如何拼接一个列表并使用拼接部分创建一个新列表?

转载 作者:太空宇宙 更新时间:2023-11-03 18:54:54 25 4
gpt4 key购买 nike

这是一个例子。

该文件有一个字符串:4;4;4;8;4;4;4;9;9;4;4

我希望它输出:

4;4;4
8
4;4;4
9
9
4;4

在此示例中,确定何时拼接的限制将是大于 4 的任何数字。我已尝试在此处查看 python 库和其他问题。我的猜测涉及以下内容:

listA = [] 
listB = []
for i in line:
listA.append(i)

for item in listA:
if int(item) > 4:
listB.append(item)
else:
item = item

print(listA)
print(listB)

有没有更高效、更快的方法?我确信有,但我在 python 方面没有那么丰富的经验,非常感谢您的帮助!

最佳答案

使用itertools.groupby :

from itertools import groupby

for key, group in groupby(line.split(';'), key=lambda i: int(i) > 4):
if key:
for i in group:
print(i)
else:
print(';'.join(group))

演示:

>>> for key, group in groupby(line.split(';'), key=lambda i: int(i) > 4):
... if key:
... for i in group:
... print(i)
... else:
... print(';'.join(group))
...
4;4;4
8
4;4;4
9
9
4;4

groupby 实用函数按键对序列进行分组;这里的值是否大于 4;每次迭代都会为我们提供一系列值,这些值是一个或另一个如果当前组中的值确实更大,我们将它们打印在单独的行上,否则它们会再次用分号连接成一个字符串。

关于python - 如何拼接一个列表并使用拼接部分创建一个新列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17497323/

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