print(“,”.join(result)+“\n”)如何获得相同的结果,但要写入fi

2024-04-25 22:54:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想从我的print语句中去掉方括号,print可以正常工作,但是我不能让它用于write to file。你知道吗

这是我的打印声明,效果很好:

 print(",".join(result)+"\n")

我尝试过将此代码写入该文件,但它仍然显示方括号。你知道吗

 output.write("".join(str(result)+"\n"))

打印语句显示的理想结果是:

text1.1,text1.2

text2

text3.1,text3.2

但我的书面声明告诉我:

['text1.1', 'text1.2']
['text2']
['text3.1', 'text3.2']
[]

Tags: 文件to代码声明output语句resultfile
1条回答
网友
1楼 · 发布于 2024-04-25 22:54:16

当使用join()时,您提供了一个iterable,其中包含类型为str的元素。 因此对于每个元素,它将其连接到一个结果字符串,该字符串由前面提到的字符' '分隔' '.join()

因此,请看下面使用的方法的结果

result =['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
# when using the right way
line = ','.join(result)

# what you are doing

line2 = ','.join(str(result))

print(line, line2,sep = '\n')

# line -> 0,1,2,3,4,5,6,7,8,9
# line2 -> [,',0,',,, ,',1,',,, ,',2,',,, ,',3,',,, ,',4,',,, ,',5,',,, ,',6,',,, ,',7,',,, ,',8,',,, ,',9,',]

因此,您不需要将字符串列表(即result)转换为字符串(即str(result)) 只需将result传递给join。你知道吗

相关问题 更多 >