python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python 文件操作

Python 文件操作大全

作者:椰椰椰耶

这篇文章主要介绍了Python 文件操作大全,本文结合实例代码给大家介绍的非常详细,需要的朋友可以参考下

打开文件

在读写文件前需要先打开文件

open 打开一个文件

f = open('d:/MyComputer/text.txt','r')
print(f)  
print(type(f))
"""
运行结果
<_io.TextIOWrapper name='d:/My Computer/text.txt' mode='r' encoding='cp936'>
<class '_io.TextIOWrapper'>
"""
  • 文件的内容,是在硬盘上的
  • 此处的文件对象,则是内存上的一个变量
  • 后续读写文件操作,都是拿着这个文件对象来进行操作的
    此处的文件对象就像一个“遥控器”一样,计算机中,也把这样的远程操控的“遥控器”称为“句柄”(handler

关闭文件

文件在打开完之后,使用完之后,一定要关闭!
打开文件,其实是在申请一定的系统资源。不再使用文件的时候,资源就应该及时释放
否则就可能造成文件资源泄露,进一步导致其他部分的代码无法顺利打开文件了
正是因为一个系统的资源是有限的,因此一个程序能打开的文件个数也是有上限的

f.close()

文件打开的上限

# 文件打开的上限  
FIle = []  
count = 0  
while True:  
    f = open('d:/My Computer/text.txt')  
    first.append(f)  
    count += 1  
    print(f'打开文件的个数:{count}')

写文件

使用 r 方式打开文件

# 使用 read 方式打开文件,再进行写操作  
f = open('d:/My Computer/text.txt','r')  
f.write('hello')  
f.close()

文件会抛出异常

使用 w 的方式打开文件

# 使用 write 来实现写文件的操作  
# 使用 read 方式打开文件,再进行写操作  
f = open('d:/My Computer/text.txt','w')  
f.write('hello')  
f.close()  
f = open('d:/My Computer/text.txt','w')  
f.write('world')  
f.close()

使用 a 的方式打开文件

# 使用 read 方式打开文件,再进行写操作  
f = open('d:/My Computer/text.txt','w')  
f.write('hello')  
f.close()  
f = open('d:/My Computer/text.txt','a')  
f.write('world')  
f.close()

此时原有内容不变,写入的内容会存在于之前文件内容的末尾(追加写

读文件

中文和英文类似,在计算机中,都是使用“数字”来表示字符的。但具体是那个数字对应哪个汉字是有多个版本的,主流的是:

按字符数量读取

# 按字符数量来读取  
f = open('d:/My Computer/text.txt','r',encoding='utf8')  
result = f.read(5)  
print(result)  
f.close()
"""
运行结果
床前明月光
"""

按行来读取

最简单的方法,就是直接使用 for 循环

# 按行读取  
f = open('d:/My Computer/text.txt','r',encoding='utf8')  
for line in f:  
    print(f'line = {line}')  
f.close()
"""
运行结果
line = 床前明月光
line = 疑是地上霜
line = 举头望明月
line = 低头思故乡
"""
# 按行读取  
f = open('d:/My Computer/text.txt','r',encoding='utf8')  
for line in f:  
    print(f'line = {line}', end = '')  
f.close()
"""
运行结果
line = 床前明月光
line = 疑是地上霜
line = 举头望明月
line = 低头思故乡
"""

直接读取全部内容

使用 readlines 的方法,直接把整个文件所有的内容都读出来,并且按照行组织到一个列表中

# 直接读完所有内容,并且按行进行组织  
f = open('d:/My Computer/text.txt', 'r', encoding='utf8')  
lines = f.readlines()  
print(lines)  
f.close()
"""
运行结果
['床前明月光\n', '疑是地上霜\n', '举头望明月\n', '低头思故乡']
"""

上下文管理器

打开文件之后, 是容易忘记关闭的,Python 提供了上下文管理器,来帮助程序猿自动关闭文件

with open('d:/My Computer/text.txt','r',encoding='utf8') as f:
	# 进行文件处理的逻辑

到此这篇关于Python 文件操作大全的文章就介绍到这了,更多相关Python 文件操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文