为什么python文件最后没有输出我文件里的文字,只有一个 ‘ ’嘞

文件的读取是顺序执行的,每次读取完一个字符之后,就会向下执行下一次读取了。

读取的第一个字符存放在data里面了,你可以尝试print(data)看看,里面是文件里的第一个字符。

文件里的第二个字符,应该就是这里显示的空格吧。

另外,可以使用f.readline()来读取一整行文件。

使用f.readlines()来读取文件里的所有行。

你不都是定义了一个data了么,为啥不用呢?

 

这样写是有内容输出的:

f = open('c:/users/yyz/desktop/123.txt','r',encoding='utf-8')
f.read()

这样写没有输出:

f = open('c:/users/yyz/desktop/123.txt','r',encoding='utf-8')
data = f.read()
f.read()

而这样写又有输出:

f = open('c:/users/yyz/desktop/123.txt','r',encoding='utf-8')
data = f.read()
f.seek(0)
f.read()

原因是用这种方式读取文件的时候, 需要注意光标的位置, data=f.read() 读取了文件, 光标到了文本的最后面, 所以再读取的时候是没有内容.

而用f.seek(0) 可以把光标移到最前面, 所以在读取的时候就有内容了. 

您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632