我有2个字符串列表,它们是根据数据库内容构建的,但我很难将其读入txt文件
list_a={u'XYZ-123-456',u'XYZ-123-456',u'XYZ-789-456',....}
list_b={u'Tom \n is creative', u'Sky is blue',....}
我需要做的是在两个列表中的每个字符串的开头摆脱'u',在list_b中的每个字符串中删除\ n。
然后将list_b中的每个元素一行一行地写入一个文本文件到txt文件中,该文件的标题是list_a中的元素。具有相同标题的字符串应位于相同的txt文件中。有人可以帮忙吗?
我想我可以使用pop函数来摆脱你,但字符串中的'\ n'怎么样? 我也不是100%确定I / O功能。有人可以帮我拿样本脚本吗?
非常感谢,这是python的新手
答案 0 :(得分:1)
欢迎所以SO。
list_a
实际上是set
。 {}
表示set
,这是一个唯一项目列表 - 因此,如果您希望“列表”中有多个值,则可能不需要此类型。如果您需要实际列表,请使用[...]
代替{...}
集合中的“u”表示文本为unicode。如果你想删除它:
list_a = map(str, list_a)
\n
是一个表示新行的控制字符。在控制台中打印时,这将表示为新行。如果你真的不想要换行,那就行:
list_b= { item.replace('\n','') for item in list_b }
我假设你想要文本文件中新行的每个项目。如果是这样的话:
with open('c:\file.txt', 'w') as file:
file.write('\n'.join(list_a))
file.write('\n'.join(list_b))
对于非重复项,将2个列表合并为一个集合。由于它们目前已经设置,因此可以使用:
with open('c:\file.txt', 'w') as file:
file.write('\n'.join(list_a + list_b))