将列表转换为字符串

我已经从文件中提取了一些数据,并希望将其写入第二个文件。 但我的程序正在返回错误:

sequence item 1: expected string, list found

这似乎正在发生,因为write()一个字符串,但它正在接收一个列表。

所以,就这段代码而言,我如何将列表buffer转换为字符串,以便将buffer的内容保存到file2

file = open('file1.txt','r')
file2 = open('file2.txt','w')
buffer = []
rec = file.readlines()
for line in rec :
    field = line.split()
    term1 = field[0]
    buffer.append(term1)
    term2 = field[1]
    buffer.append[term2]
    file2.write(buffer)  # <== error
file.close()
file2.close()

尝试str.join

file2.write(' '.join(buffer))

文档说:

返回一个字符串,它是可迭代迭代中字符串的串联。 元素之间的分隔符是提供此方法的字符串。


''.join(buffer)

file2.write( str(buffer) )

说明: str(anything)会将任何python对象转换为其字符串表示形式。 类似于你输出的结果,如果你print(anything) ,但作为一个字符串。

注意:这可能不是OP想要的东西,因为它有如何的元素没有控制buffer被连接-它将把,每个人之间-但它可能对别人有用。

链接地址: http://www.djcxy.com/p/31795.html

上一篇: Converting a list to a string

下一篇: How can I simplify this conversion from underscore to camelcase in Python?