python文件读取

问题遇到的现象和发生背景

请问为什么设不设参数的区别那么大?

用代码块功能插入代码,请勿粘贴截图

代码1:
p = open("1.txt","r")
while True:
x = p.readline()
if x:
print(f"{x}")
else:
break
p.close()
代码2:
p = open("1.txt","r")
while True:
if p.readline():
print(f"{p.readline()}")
else:
break
p.close()

运行结果及报错内容

注:1.txt的内容为:
ww
11
sdfc
运行第一个代码的时候可以输出完整内容,但是后一个的运行结果是11

因为后一个你在一次while循环中执行了两次读行,
第一次循环的时候,if p.readline(): 读出 'ww'
print(f"{p.readline()}") 读出'11'
第二次循环的时候,if p.readline():读出'sdfc'
然后print读到空的
再就就退出循环了。

对于文件操作,我也记录过对应的内容。可以在主页搜一搜哦!