用python编写一个文本文件中的列表

用python编写一个文本文件中的列表,python,Python,我有一个列表l1=['hi','hello',23,1.23] 我想把文本['hi','hello',23,1.23]写在一个文本文件中,即列表的值 简单的 with open('f1.txt','w') as f: f.write(l1) 不起作用,所以我试过这个 f=open('f1.txt','w') l1=map(lambda x:x+',', l1) f.writelines(l1) f.close() 但这也不行。上面说 TypeError:不支持+:'int'和'st

我有一个列表
l1=['hi','hello',23,1.23]

我想把文本
['hi','hello',23,1.23]
写在一个文本文件中,即列表的值

简单的

with open('f1.txt','w') as f:
     f.write(l1)
不起作用,所以我试过这个

f=open('f1.txt','w')
l1=map(lambda x:x+',', l1)
f.writelines(l1)
f.close()
但这也不行。上面说

TypeError:不支持+:'int'和'str'的操作数类型


当列表包含数字、字母和浮点数时,如何实现这一点?

使用列表的
\uuu str\uuu()
方法

with open('file.txt', 'w') as f:
    f.write(l1.__str__())
任何对象的
\uu str\uu()
方法返回
print
获取的字符串;在您的情况下,您的格式化列表。

您只是:

with open('f1.txt', 'w') as f:
    f.write(str(l1))

不能将列表直接写入文件,但首先必须将列表转换为字符串,然后将字符串保存到文件中。 我回答了同样的问题。你可以在这里查一下


你有列表
l1=['hi','hello',23,1.23]
并且你想写文本
['hi','hello','welcome']
,但是这两个有什么关系呢?但是如果你想写
f.write(str(l1))
,那么,它应该在您共享的第一个代码段中起作用而不是重复,因为当列表包含字符串、数字同时浮动时,所提到的答案不起作用。有些答案也适用于数字元素。例如,为什么不仅仅是
str(l1)
.\uuuu str\uuuu(…)
是一个神奇的函数,在任何地方展示魔法都不是一个好的做法(特别是当它不是必需的时候):@moinuddinkadri哦,我的印象是>“我想把文本['hi'、'hello'、'welcome']写在一个文本文件中”,OP想要字符串的表示是的,需要字符串的表示。但是你可以通过
str(l1)
@pstatix获得这一点,但是为什么要投否决票呢?“这好像不起作用或什么的。”我以领先票将其删除。我误读了元素列表。