在python中写入文本文件时,如何在单词之间留出空格

2024-04-25 08:27:19 发布

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

以下代码写入文本文件

if classno== '1':
    f = open("class1.txt", "a")
if classno== '2':
    f = open("class2.txt", "a")
if classno== '3':
    f = open("class3.txt", "a")
f.write(name) 
f.write(score)
f.close()

但是,在文本文件中,名称和分数之间没有空格例如,我如何将“James14”改为“James14”


Tags: 代码nametxt名称closeifopenwrite
3条回答

你必须写下这段话:

f.write(name) 
f.write(' ') 
f.write(score)

或使用字符串格式:

f.write('{} {}'.format(name, score))

如果您使用的是Python 3,或者使用的是from __future__ import print_function,您还可以使用^{} function,并让它为您添加空间:

print(name, score, file=f, end='')

我将end设置为空字符串,因为否则还会得到换行符。当然,如果要在文件中写入多个名称和分数,并且每个条目都需要在自己的行上,那么实际上,您可能需要使用换行符。

你可以试试

f.write(name) 
f.write(' ') 
f.write(score)

或者

f.write(name + ' ') 
f.write(score)

或者

f.write(name ) 
f.write(' ' +score)

或者

f.write("{} {}".format(name,score)) 

或者

f.write("%s %s"%(name,score)) 

或者

f.write(" ".join([name,score]))

一个简单的方法是简单地连接一个空格字符

f.write(name + ' ' + score)

一个更健壮的方法(如果格式更加复杂)是使用format方法

f.write('{} {}'.format(name, score))

相关问题 更多 >