python 列表到 .txt 文件,引号消失

python list to .txt file, quotation marks disappear

我有一个与此类似的 python 列表:

my_list = ["hello", "bye", "good morning", "good evening", , "'yes", "''no'"]

请注意,字符串中可能存在一些奇怪的引号组合。

我想将它输出到一个文本文件中,但是在这个过程中引号丢失了。

我的代码:

with open('/foo/bar.txt', 'w') as writefile:
     writefile.write('\n'.join(my_list))

我的文本文件如下所示

hello
bye
good morning
...

我希望它看起来像这样:

"hello"
"bye"
"good morning"
...

引号仅在python语法中用于标记字符串。你可以这样写:

with open('/foo/bar.txt', 'w') as writefile: 
    writefile.write('"' + ('"\n"'.join(mylist)) + '"')

如果这不起作用,只需使用 for 循环将字符串与 f 字符串连接起来,瞧! :D

试试这个:

txt = ["hello", "bye", "good morning", "good evening", "yes", "no"]

with open("my_file.txt", "w") as f:
    f.writelines(f'"{w}"\n' for w in txt)

输出:

"hello"
"bye"
"good morning"
"good evening"
"yes"
"no"

一种可能的解决方案是使用字符串文字。在任何你想要这样一个字符的地方,只需在它之前放置一个“\”符号,或者为了更好地理解它你可以阅读字符串文字 here

my_list = ["\"hello\"", "bye", "good morning", "good evening", "'yes", "''no'"]

用这个也可以解决你的问题