问题描述
我试图从每一行开始读取,直到,
为止,以便我可以使用格式对其进行编辑以添加文本,但是直到每一行的某个点之前,我都不知道要使用哪个代码读取。我尝试在网上搜索,但找不到任何内容
def pretty_print():
file = open('kaartnummers','r')
# print(file.read())
print(file.read())
pretty_print()
325255,Jan Jansen
334343,Erik Materus
235434,Ali Ahson
645345,Eva Versteeg
534545,Jan de Wilde
345355,Henk de Vries
所需的输出:
Jan Jansen heeft kaartnummer: 325255
Erik Materus heeft kaartnummer: 334343
Ali Ahson heeft kaartnummer: 235434
Eva Versteeg heeft kaartnummer: 645345
Jan de Wilde heeft kaartnummer: 534545
Henk de Vrie heeft kaartnummer: 345355
解决方法
with open("sample.txt","r") as f:
for line in content_list:
if "," in line:
line_sepperated = line.split(",")
name = line_sepperated[1]
num = line_sepperated[0]
print(f'{name} heeft kaartnummer: {num}')
else:
print(line)
简短说明:
- 打开并读取文件,并将其拆分为行列表
- 对各行进行迭代:如果存在
,
-按行拆分行,并通过格式化所需的格式进行打印,如果不行,则-打印整行
我又尝试了一次,但是现在我正在为最后一件事而苦苦挣扎,如果fprint使用str(num)+''和甚至是fprint,我会在很多方面进行尝试。格式,但我的结果仍然不是我想要的。
def pretty_print():
line = open('kaartnummers','r')
with open("kaartnummers","r") as f:
for line in line:
if "," in line:
line_sepperated = line.split(",")
name = line_sepperated[1]
num = line_sepperated[0]
# print(f'{name} heeft kaartnummer: {num}')
# print('{} heeft kaartnummer: {}' .format(*[name],*[num]))
print(str(name)+' heeft kaartnummer: '+str(num))
else:
print(line)
pretty_print()
因为如果我打印该代码,它将给出结果
https://i.stack.imgur.com/7d7fy.png
Jan Jansen
heeft kaartnummer: 325255
Erik Materus
heeft kaartnummer: 334343
Ali Ahson
heeft kaartnummer: 235434
Eva Versteeg
heeft kaartnummer: 645345
Jan de Wilde
heeft kaartnummer: 534545
Henk de Vries heeft kaartnummer: 345355
,
我修复了它。
修复它的命令是
.replace("\n","")
现在我有
print(f'{num} heeft kaartnummer: {name}'.replace("\n",""))
print('{} heeft kaarnummer: {}'.format(*[num],*[name]).replace("\n",""))
print(str(num).replace("\n","")+' heeft kaartnummer: '+str(name).replace("\n",""))
它可以在所有3条打印线上使用