[英]How to concatenate text in different lines If they are next to each other
So I have this TXT with the following sample of text:所以我有这个带有以下文本示例的 TXT:
3f064f5dc6d9054cae0602d922cfb3bc.jpg
c471d894b3384dbb5becfbf35886614c.jpg
44b703af3547891a277fe4b2971a0e8d.jpg
ca45e2c73156b8513aa4c286abac2191.jpg
ff286b1f745a235426f28f5edbdd2df6.jpg
70fe48160a3745fc9d963297d6a7e819.jpg
cb017ddb752ad8fb92f22f3cc0c0498a.jpg
I would like to concatenate all the text that is in the contiguous line into one line separated by an "OR" in python.我想将连续行中的所有文本连接成一行,在 python 中用“OR”分隔。
According to the sample above the output is 3 lines:根据上面的示例 output 是 3 行:
3f064f5dc6d9054cae0602d922cfb3bc.jpg OR c471d894b3384dbb5becfbf35886614c.jpg 3f064f5dc6d9054cae0602d922cfb3bc.jpg 或 c471d894b3384dbb5becfbf35886614c.jpg
44b703af3547891a277fe4b2971a0e8d.jpg OR ca45e2c73156b8513aa4c286abac2191.jpg OR ff286b1f745a235426f28f5edbdd2df6.jpg 44b703af3547891a277fe4b2971a0e8d.jpg 或 ca45e2c73156b8513aa4c286abac2191.jpg 或 ff286b1f745a235426f28f5edbdd2df6.jpg
70fe48160a3745fc9d963297d6a7e819.jpg OR cb017ddb752ad8fb92f22f3cc0c0498a.jpg 70fe48160a3745fc9d963297d6a7e819.jpg 或 cb017ddb752ad8fb92f22f3cc0c0498a.jpg
How can this be done?如何才能做到这一点?
Thanks in advance提前致谢
You can use itertools.groupby
:您可以使用
itertools.groupby
:
from itertools import groupby
for v, g in groupby(map(str.strip, open("your_file.txt", "r")), lambda k: k != ""):
if v:
print(" OR ".join(g))
Prints:印刷:
3f064f5dc6d9054cae0602d922cfb3bc.jpg OR c471d894b3384dbb5becfbf35886614c.jpg
44b703af3547891a277fe4b2971a0e8d.jpg OR ca45e2c73156b8513aa4c286abac2191.jpg OR ff286b1f745a235426f28f5edbdd2df6.jpg
70fe48160a3745fc9d963297d6a7e819.jpg OR cb017ddb752ad8fb92f22f3cc0c0498a.jpg
Just split the content by \n\n
只需将内容拆分为
\n\n
with open("test.txt", "r") as f:
content = f.read()
lines = [line.rstrip().replace('\n', ' OR ') for line in content.split('\n\n')]
for line in lines:
print(line)
3f064f5dc6d9054cae0602d922cfb3bc.jpg OR c471d894b3384dbb5becfbf35886614c.jpg
44b703af3547891a277fe4b2971a0e8d.jpg OR ca45e2c73156b8513aa4c286abac2191.jpg OR ff286b1f745a235426f28f5edbdd2df6.jpg
70fe48160a3745fc9d963297d6a7e819.jpg OR cb017ddb752ad8fb92f22f3cc0c0498a.jpg
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.