2021-10-16

本文介绍了如何使用Python读取文件内容,包括逐行读取、一次性读取及处理异常,并演示了在大文件中查找特定内容的方法。重点讲解了`open()`函数、`read()`、`readlines()`和异常处理技巧。
摘要由CSDN通过智能技术生成

python文件与异常(1)

#从文件中读取数据 read()

'''with open('C:\\Users\Administrator\Desktop\python文件与异常\pi_digits.txt') as file_object:#打开文件并赋值给file_object
#注意次数C:后面有两个斜杠,是为了防止python把单斜杠认成转义符,也可以全改为反斜杠
    contents=file_object.read()#读取文件内容
print(contents)

在这里插入图片描述

#输出结果末尾有空行,可以使用rstrip()去除空行

print(contents.rstrip())'''

在这里插入图片描述

#如果文件绝对路径过长不方便维护,可以将其赋值给变量,每次引用直接用变量代替

#逐行读取文件 for

'''file_path='C:\\Users\Administrator\Desktop\python文件与异常\pi_digits.txt'''
'''with open(file_path) as file_object:
    for line in file_object:
        #print("\t"+line)制表符用双引号圈起来,+不可少,不然可能无法识别

        print(line.rstrip())'''

#结果每一行都会有换行,使用rstrip()剔除,rstrip剔除字符串末尾的空格或者换行。

#逐行读取文件 readlines()

'''with open(file_path) as file_object:
    lines=file_object.readlines()

for line in lines:
    print(line.rstrip())'''

在这里插入图片描述

#如果想要输出的结果为一排,则需要设定一个空字符串,将循环结果赋值给字符串并输出

'''with open(file_path) as file_object:
    lines=file_object.readlines()
pi_string='''''
'''for line in lines:
    pi_string=pi_string+line.rstrip()#此处为累加,直接赋值会出错
print(pi_string)
print(len(pi_string))'''

在这里插入图片描述

#如果想要把结果字符串前端的空格或者换行也删除,则需要用strip

'''for line in lines:
    pi_string=pi_string+line.strip()
print(pi_string)
print(len(pi_string))'''

在这里插入图片描述

#大型文件(100w位)

'''path="C:\\Users\Administrator\Desktop\python文件与异常\pi_million_digits.txt"
with open(path) as file_object:
    lines=file_object.readlines()
pi_string=''
for line in lines:
    pi_string=pi_string+line.strip()
print(pi_string[0:52])'''#切片只取前52个数

在这里插入图片描述

#对文件中的内容进行查找

path="C:\\Users\Administrator\Desktop\python文件与异常\pi_million_digits.txt"
with open(path) as file_object:
    lines=file_object.readlines()
pi_string=''
for line in lines:
    pi_string=pi_string+line.strip()
bitrhday=input("请输入你的生日:")
if bitrhday in pi_string:
    print("在文件中查找到相同内容")
else:
    print("在文件中未查找到相同内容")

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值