目录
介绍
在编程中,文件操作是一个非常重要的部分,无论你是处理数据、保存配置还是记录日志,都离不开文件操作。本文将详细介绍Python中文件操作的基本概念和常用方法,帮助你掌握这一技能。
了解编码
在对文件操作之前我们先要了解文件的编码格式,文件的编码格式是指将字符转换为二进制数据的方式。不同的编码格式使用不同的规则来表示字符,因此选择正确的编码格式对于确保文件内容的正确读取和显示至关重要。
以下是几种常见的编码表
-
ASCII 码表 采用一个字节存储键盘上任意一个字符
需要记忆的符号对应的 ASCII 码值:'0' - 十进制: 48 - 二进制: 00110000'A' - 十进制: 65 - 二进制: 01000001'a' - 十进制: 97 - 二进制: 01100001
- GB2312 | GBK 中国简体汉字字符表示,一个汉字字符占用2个字节
- BIG-5 用于表示中国台湾香港繁体字
-
unicode 万国码,表示一个字符占用 4 个字节 python 默认的编码
-
utf-8 是unicode编码的压缩格式,表示一个字符占用3个字节
一、文件的读写操作(open()-close())
步骤
打开文件【创建与系统资源的连接】操作文件【写 读】关闭文件【释放 | 关闭系统资源的连接】
1、写操作 open()
方式1:以字节的方式覆盖写数据到文件中 wb模式
f = open('test1.txt', mode='wb') # 若写数据目标文件不存在,则自动创建
# 写数据到文件中
f.write('写的内容'.encode('UTF-8')) # 以指定编码变成字节
f.close()
方式2:以字节的方式追加写数据到文件中 ab模式
f = open('E:\\Projects\\PycharmProjects\\data\\test1.txt',
mode='ab')
# 写数据到文件中
f.write('写的内容\n'.encode('UTF-8'))
f.close()
方式3:以字符的方式以指定的编码覆盖写入 w模式
f = open('E:\\Projects\\PycharmProjects\\data\\test2.txt',
mode='w', encoding='UTF-8')
# 写数据到文件中
f.write('数加科技666\n')
f.close()
方式4:以字符的方式以指定的编码覆盖写入 a模式
f = open('E:\\Projects\\PycharmProjects\\data\\test2.txt',
mode='a', encoding='UTF-8')
# 写数据到文件中
f.write('数加科技666!\n')
f.close()
2、读取操作 open()
方式1:以字节的形式读取文件数据
f = open('E:\\Projects\\PycharmProjects\\data\\test2.txt',
mode='rb')
s1 = f.read().decode('utf-8')
f.close()
print(s1)
方式2:以字符的形式读取文件数据
f = open('E:\\Projects\\PycharmProjects\\data\\test2.txt',
mode='rb',encoding='UTF-8')
s1 = f.read()
f.close()
print(s1)
二、文件的读写操作(with open())
用此种方式读取文件不需要频繁的对文件进行打开、关闭操作,结束时会自动关闭文件,所以这种方法使用起来比较方便。
1、写操作
方式一:覆盖写数据到文件中 w模式
with open('text1.txt', 'w', encoding='utf-8') as f:
f.write('写入的内容')
方式二:追加写数据到文件中 a模式
with open('text1.txt', 'a', encoding='utf-8') as f:
f.write('写入的内容')
2、读取操作
with open('text1.txt', 'r', encoding='utf-8') as f:
content = f.read()
print(content)
补充
1、读取文件内容有几种方法:
read()
:读取整个文件内容。readline()
:读取一行内容。readlines()
:读取所有行,返回列表。
写入文件的方法:
write()
writelines()
2、文件管理操作
Python的os
和shutil
模块提供了文件管理功能,如重命名、移动和删除文件
import os
import shutil
# 重命名
os.rename('oldname.txt', 'newname.txt')
# 移动
shutil.move('file.txt', 'newdir/')
# 删除
os.remove('file.txt')
总结
通过本文的学习,你已经掌握了Python文件操作的基本知识和常用方法。希望这些内容能帮助你在实际编程中更加得心应手。继续练习和探索,你会发现更多有趣的用法!