文件
编码格式
编码格式–常用的字符编码格式。
Python的解释器使用的是Unicode(内存);
.py文件在磁盘上使用UTF-8存储(外村);
备注:修改.py文件的编码 #encoding=gbk/utf-8
文件的读写原理
文件的读写称为IO操作
文件读写操作流程:Python操作文件–>打开或新建文件–>读写文件—>关闭资源。
**文件读写操作:**内置函数open()创建文件对象。
file = open(filename,[mode,encoding]) encoding模式以gbk编码打开
file.readline() 按行读取文件。
file1 = open('E:/VS_Code_Workspace/moreTest/test/test.txt','r')
print(file1.readlines()) # ['Hello, Python\n', 'Hello, world']
file1.close()
常用的文件打开模式
文件的类型有两种,分别为:文本文件和二进制文件。
文本文件:默认为Unicode字符集,记事本打开。
二进制文件:图片、音频、doc文档、字节存储。
mode=r时–只读模式打开文件,文件指针放在文件开头。
mode=w时–只写模式打开文件,文件不存在时创建文件,文件存在覆盖原有内容,指针在开头。
mode=a时–以追加模式打开文件,文件不存在时创建文件,文件末尾追加内容,指针在末尾。
mode=b时–已二进制打开文件,不能单独使用,需要和其他模式一起使用。rb/wb。
mode=+时–以读写方式打开文件,不能单独使用,需要与其他模式一起使用。a+
file1 = open('E:/VS_Code_Workspace/moreTest/test/test1.txt','w')
file1.write('wo shi XXX')
file1.close()
文件对象的常用方法
读:read()、read(2)–读取2个字符、readline()–读一行、readlines()–读所有行,列表返回。
写:write()–将字符串写入文件、writelines()–把列表写进入,不会换行。
seek(offiset,whence):将文件指针移动到新的位置;offiset–为正,向结束方向移动;为负,向开始方向移动。whence–0-从开头开始计算(默认),1-从当亲位置计算。2-从文件末尾开始计算。
tell():返回文件指针当前位置。
flash():将缓冲区的内容写入文件,但不关闭文件。
close():把缓冲区的内容写入文件,同时关闭文件。
with语句(上下文管理器)
with语句可以自动管理上下文资源【类实现了__enter__(self)和__exit__(self)方法】,不论什么原因跳出with块,都能确保文件正确关闭,以此来达到释放资源的目的。
with open('E:/VS_Code_Workspace/moreTest/test/test.txt','r') as file1:
text = file1.read()
print(text)
# Hello, Python
# Hello, world
目录
os模块是Python内置的与操作系统功能和文件系统相连的模块,该模块中的语言的执行结果通常与操作系统有关,在不同的操作系统上运行,得到的结果可能不一样。
os模块与os.path模块用于对目录或文件进行操作。
os.system(‘calc.exe’) 打开计算器
os.startfile(‘C:\Program Files (x86)\Tencent\WeChat\WeChat.exe’) 打开微信
os.getcmd()–获取当前目录。
os.listdir()–返回目录下所有文件。
os.mkdir()–创建目录。
os.makedirs()–创建多级目录。
os.rmdir()–删除目录。
os.removedirs()–删除多级目录。
os.chdir()–将path设置为当前工作目录。
os.path模块常用方法:
os.path.abspath(path)–用于获取文件或目录的绝对路径。
os.path.exits(path)–判断目录或文件是否存在。
os.path.join(path,file)–将目录和文件拼接。
os.path.spilt(path)–裁分目录和文件。
os.path.spiltext(path)–裁分文件名和扩展名。
os.path.basename(path)–从目录中提取文件名。
os.path.dirname(path)–从目录中提取目录名。
os.path.isdir(path)–判断是否是目录。
例子:列出指定目录下所有.py文件
# 列出指定目录下所有.py文件
file1 = os.walk('./')
print(file1)
for dirpath, dirname, filename in file1:
print(dirpath, dirname, filename)
本文介绍了Python中关于文件和目录的基本操作,包括文件的编码格式、读写原理、常用的打开模式,以及文件对象的方法。重点讲解了with语句在管理资源中的作用,并概述了os模块如何用于目录和文件的操作,如创建、删除、列出目录内容等。

被折叠的 条评论
为什么被折叠?



