删除' \ n'来自print statement的字符

时间:2017-12-23 19:38:32

标签: python python-3.x file-io

写入文本文件时,我有以下代码:

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语句中的换行符?稍微有点假设,但这让我烦恼。

2 个答案:

答案 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。必须提供endsependfile(如果有)   作为关键字参数。

这是当前正在打印到文件的内容。