码迷,mamicode.com
首页 > 其他好文 > 详细

读一个文件内容的4种方法

时间:2019-04-14 17:59:14      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:开始   data   inf   无法   strong   content   odi   adl   乱码   

第一种  readline() 读一行执行完就把文件关闭
with open("data1.txt",mode="r",encoding="utf-8")as f1:
content=f1.readline()
print(content)
输出:你好苍老师

 

第二种 readlines()  拿到一个列表
with open("data1.txt",mode="r",encoding="utf-8")as f1:
content1
= f1.readlines()
print(content1)
输出:[‘\ufeff你好苍老师\n‘, ‘alex我是你爸爸\n‘, ‘小泽老师你好棒\n‘, ‘来呀呀\n‘, ‘咯咯lol‘]

 

附加:

with open("data1.txt",mode="r",encoding="utf-8")as f1: content=f1.readline() print("readline读出:content=%s"%content) content1 = f1.readlines() print("readlines读出:content1=%s"%content1) 输出: readline读出:content=你好苍老师 readlines读出:content1=[alex我是你爸爸\n, 小泽老师你好棒\n, 来呀呀\n, 咯咯lol]

为啥会这样,执行完readline()光标移动到第一行的\n之后,再执行 readlines() 就从第二行开头开始读


 

 

第三种  for line in f1   一行一行读   line拿到的是一个字符串
with open("data1.txt",mode="r",encoding="utf-8")as f1:
    for line in f1:
        print(line)
输出:
你好苍老师

alex我是你爸爸

小泽老师你好棒

来呀呀

咯咯lol

 

 

第四种:read()  全部读出啦
with open("data1.txt",mode="r",encoding="utf-8")as f1:
content2=f1.read()
    print(content2)
输出:
你好苍老师
alex我是你爸爸
小泽老师你好棒
来呀呀
咯咯lol

 

文件data1是txt文件,编码选utf-8保存

技术图片

 

总结

文件操作,读取文件内容,关键点是看光标的位置,记住read(1),这个1是代表读一个字符,而seek(1)这个1是字节;
utf-8:一个中文字符=3个字节,移动光标位置,比如一个中文字符,seek(2)文件内容就会变成乱码,因为光标无法达到中文所指定位置(中文3个字节),乱码就是编码变了,光标就能跳到所指定位置了:

读一个文件内容的4种方法

标签:开始   data   inf   无法   strong   content   odi   adl   乱码   

原文地址:https://www.cnblogs.com/yx12138/p/10705904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!