python_文件读取篇

try:
file_name = “demo2.txt”
with open(file_name, encoding=‘UTF-8’) as file_obj:
content = file_obj.read(6) #读取6个字符的内容
print(content)
except FileNotFoundError:
pass
#1.调用open()来打开一个文件时, 可以将文件分为两种类型, 一种是纯文本文件(使用UTF-8编码编写的文本文件); 另一种是二进制文件(图片, mp3, ppt等文件)

#2.open()打开文件时, 默认是以文本文件的形式打开的, 但是open()默认的编码是None, 即ASCII码
#3.所以处理文本文件时,必须要指定文件的编码:

open(file_name, encoding = ‘utf-8’)

#4.如果直接使用read(), 它会将文本文件的所有内容读取出来, 如果读取的文件较大, 会一次性将文件中的内容加载到内存中, 容易导致内存泄漏

#5.read()中可以接收一个size作为参数, 该参数用来指定想要读取的字符的数量, 默认值为-1, 它会读取文件中的所有字符

#6.可以为size指定制定的值, 这样read()会读取指定数量的字符, 每一次读取都是从上次读取到的位置开始读取的, 如果字符的数量小于size, 则会读取剩余所有

#7.读取大文件:

try:
file_name = “demo2.txt”
with open(file_name, encoding=‘UTF-8’) as file_obj:
chunk = 6 #定义每一读取数据的大小
print(file_obj.readline()) #readline()函数, 可以用来读取一行数据
content = ‘’
while True:
c = file_obj.read(chunk) #读取6个字符的内容
content = content + c

        if not c:        #内容读取完
            break
    print(content)

except FileNotFoundError:
pass

#8.readlines(), 该方法用于一行一行的读取数据, 会一次性将读取到的内容, 封装到一个列表中返回

with open(file_name, encoding=‘UTF-8’) as file_obj:
r = file_obj.readlines()
print®
print(r[0])

#9.直接遍历file_obj的方法

with open(file_name, encoding=‘UTF-8’) as file_obj:
for t in file_obj:
print(t)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值