写入文本文件时,我有以下代码:
def writequiz(quizname,grade,perscore,score,username):
details=[quizname,username,grade,perscore,score]
with open('quizdb','a') as userquiz:
print(details,file=userquiz)
现在代码正在执行我想要的操作(每次都写入一个新行),但是如果我想将每个列表写入文本文件中的同一行,我将如何使用所使用的print方法执行此操作以上?我知道我可以使用file.write
,但如何删除print
语句中的换行符?稍微有点假设,但这让我烦恼。
答案 0 :(得分:1)
如果您使用的是python 2.x
,则可以执行以下操作:
print >> userquiz, details, # <- notice the comma at the end
如果使用pytnon 3.x
,您可以这样做:
print(details,file=userquiz, end = " ")
查看print文档。
答案 1 :(得分:0)
您可以将end
的{{1}}参数设置为空字符串(或其他字符):
print
从docs,您可以看到它默认为换行符:
print(details, file=userquiz, end='')
将
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
打印到文字流objects
,以file
分隔,然后跟sep
。必须提供end
,sep
,end
和file
(如果有) 作为关键字参数。
这是当前正在打印到文件的内容。