1. 打开文件

1.1 open函数

1.2 打开文件的方式

打开方式 含义
r 以读方式打开文件(默认
w 覆盖写方式打开文件,如果文件不存在则先创建再打开
a 追加写方式打开文件,如果文件不存在则先创建再打开
x 创建文件并以写方式打开,如果文件已存在则会抛出异常
b 二进制方式打开文件
t 文本方式打开文件(默认
‘+’ 打开磁盘文件进行更新读取写入

1.3 打开文件的编码方式

f = open('d:/Python/test.txt', 'r', encoding='utf-8')

2. 关闭文件

2.1 close函数

f = open('d:/Python/test.txt', 'r', encoding='utf-8')
#todo
f.close()

2.2 打开文件的上限

flist = []  
count = 0  
while True:  
    f = open('F:\test\test.txt','r',encoding = 'utf-8')  
    flist.append(f)  
    count += 1  
    print(count)

![[Pasted image 20231204170346.png]]

3. 读文件

3.1 read函数

f = open('F:/test/test.txt','r',encoding = 'utf-8')  
print(f.read(7)) # 风急天高猿啸哀  
f.close()

3.2 readline函数

f = open('F:/test/test.txt','r',encoding = 'utf-8')  
print(f.readline()) # 风急天高猿啸哀,  
print(f.readline()) # 渚清沙白鸟飞回。  
f.close()

3.3 readlines函数

f = open('F:/test/test.txt','r',encoding = 'utf-8')  
print(f.readlines())   
#['风急天高猿啸哀,n', '渚清沙白鸟飞回。n', '无边落木萧萧下,n', '不尽长江滚滚来。n', '万里悲秋常作客,n', '百年多病独登台。n', '艰难苦恨繁霜鬓,n', '潦倒新停浊酒杯。']  
f.close()

3.4 for循环遍历

f = open('F:/test/test.txt','r',encoding = 'utf-8')  
for line in f:  
    print(line)  
f.close()
# 风急天高猿啸哀,  
#
# 渚清沙白鸟飞回。  
#
# 无边落木萧萧下,  
# 
# 不尽长江滚滚来。  
# 
# 万里悲秋常作客,  
# 
# 百年多病独登台。  
# 
# 艰难苦恨繁霜鬓,  
#
# 潦倒新停浊酒杯。
f = open('F:/test/test.txt','r',encoding = 'utf-8')  
for line in f:  
    print(line, end='')  
f.close()  
# 风急天高猿啸哀,  
# 渚清沙白鸟飞回。  
# 无边落木萧萧下,  
# 不尽长江滚滚来。  
# 万里悲秋常作客,  
# 百年多病独登台。  
# 艰难苦恨繁霜鬓,  
# 潦倒新停浊酒杯。

4. 写文件

4.1 write函数

f = open('F:/test/test.txt','w',encoding = 'utf-8')  
f.write('2023')  
f = open('F:/test/test.txt','w',encoding = 'utf-8')  
f.write('siwen')  
f = open('F:/test/test.txt','r',encoding = 'utf-8')  
print(f.read()) # siwen  
f.close()
  • 如果以'w'的方式打开文件进行写入,那么每一次写入的内容会覆盖文件中原有的内容,因此这里写入两次后读取到的只有第二次写入的数据
f = open('F:/test/test.txt','w',encoding = 'utf-8')  
f.write('2023')  
f.write('siwen')  
f = open('F:/test/test.txt','r',encoding = 'utf-8')  
print(f.read()) # 2023siwen  
f.close()
  • 如果想写入的数据不会覆盖文件中的原有数据,就需要'a'的方式打开文件。
f = open('F:/test/test.txt','a',encoding = 'utf-8')  
f.write('2023')  
f = open('F:/test/test.txt','a',encoding = 'utf-8')  
f.write('siwen')  
f = open('F:/test/test.txt','r',encoding = 'utf-8')  
print(f.read()) # 2023siwen  
f.close()

5. 上下文管理器

为了避免程序员忘记关闭文件,Python提供了上下文管理器

with open('F:/test/test.txt','r',encoding = 'utf-8') as f:  
    line = f.readline()  
    print(line)

原文地址:https://blog.csdn.net/weixin_69509728/article/details/134790565

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_43262.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注