文件的读取是顺序执行的,每次读取完一个字符之后,就会向下执行下一次读取了。
读取的第一个字符存放在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