[英]How to write a list containing some tuples to a text file in Python
我有一个包含一些元组以及普通字符串的列表,如下所示:
a = ['sore', ('PHENOMENA', 'sore'), 'throat', ('ANATOMY', 'throat'), 'and', 'leg', ('ANATOMY', 'leg')]
我想以空格分隔的文本文件格式编写它:
sore ('PHENOMENA', 'sore') throat ('ANATOMY', 'throat') and leg ('ANATOMY', 'leg')
像这样吗
>>> ' '.join(map(str, a))
"sore ('PHENOMENA', 'sore') throat ('ANATOMY', 'throat') and leg ('ANATOMY', 'leg')"
map(str, a)
将所有的元素在a
字符串对象,那么' '.join()
通过空间加入他们的行列,并返回一个字符串对象。
您也可以使用列表推导代替map()
:
>>> ' '.join(str(i) for i in a)
"sore ('PHENOMENA', 'sore') throat ('ANATOMY', 'throat') and leg ('ANATOMY', 'leg')"
尝试这个
a = ['sore', ('PHENOMENA', 'sore'), 'throat', ('ANATOMY', 'throat'), 'and', 'leg', ('ANATOMY', 'leg')]
s = ' '.join(str(part) for part in a)
with open('outfile.txt', 'w') as outfile:
outfile.write(s)
在运行此代码的目录中,您将获得一个名为“ outfile.txt”的文件,其中包含以下内容:
sore ('PHENOMENA', 'sore') throat ('ANATOMY', 'throat') and leg ('ANATOMY', 'leg')
您可以通过''.join()在列表中的每个元素之间加入一个空格。 需要注意的是,您需要将所有内容都转换为字符串,包括元组,您可以使用map
。
一种可能的编码方式很简单:
with open('file.txt', 'w') as f:
f.write(' '.join(map(str, a)))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.