Python基础—09-文件操作
<h1 id="文件操作" data-source-line="1">文件操作 system:执行系统命令
os.system()
name:查看系统名称
获取环境变量:
(os.getenv())
getcwd:获取当前工作目录 (os.getcwd())
mkdir:创建目录(不能带中间目录) os.mkdir()
makedirs:创建目录(会自动创建中间目录) os.makedirs()
rmdir:删除目录(只能删除空目录) os.rmdir()
rename:重命名(可以是文件或目录) os.rename(原名称,新名称)
stat:查看文件信息(也可以是目录) os.stat(文件名)
相对目录/绝对目录 //../绝对目录:windows中以盘符开头,类unix中以<span style="color: #800000">'<span style="color: #800000">/<span style="color: #800000">'<span style="color: #000000">开头的目录
目录分隔符: 说明:在文件操作时,相对目录和绝对目录都可以 listdir:查看目录的直接子文件 os.listdir(目录)
path os <span style="color: #008000">#<span style="color: #008000"> 目录拼接<span style="color: #008000">
<span style="color: #008000"> print(path.join('abc/def','hello.py'))<span style="color: #008000">#<span style="color: #008000"> 提取目录<span style="color: #008000"> <span style="color: #008000"> print(path.dirname('abc/def/hello.py'))<span style="color: #008000">#<span style="color: #008000"> 提取文件名<span style="color: #008000"> <span style="color: #008000"> print(path.basename('abc/def/hello.py'))<span style="color: #008000">#<span style="color: #008000"> 切割目录与文件名<span style="color: #008000"> <span style="color: #008000"> print(path.split('abc/def/hello.py'))<span style="color: #008000"><span style="color: #008000"> dir,name = path.split('abc/def/hello.py')<span style="color: #008000"><span style="color: #008000"> print(dir,name)<span style="color: #008000">#<span style="color: #008000"> 切割文件名与后缀<span style="color: #008000"> <span style="color: #008000"> name,ext = path.splitext('hello.py')<span style="color: #008000"><span style="color: #008000"> print(name,ext)<span style="color: #008000">#<span style="color: #008000"> 判断文件是否存在(也可以判断目录)<span style="color: #008000"> <span style="color: #008000"> print(path.exists('hello.py'))<span style="color: #008000"><span style="color: #008000"> print(path.exists('aa'))<span style="color: #008000">#<span style="color: #008000"> 判断是否是目录文件<span style="color: #008000"> <span style="color: #008000"> print(path.isdir('hello.py'))<span style="color: #008000"><span style="color: #008000"> print(path.isdir('aa'))<span style="color: #008000">#<span style="color: #008000"> 判断是否是普通文件<span style="color: #008000"> <span style="color: #008000"> print(path.isfile('hello.py'))<span style="color: #008000"><span style="color: #008000"> print(path.isfile('aa'))<span style="color: #008000">#<span style="color: #008000"> 获取文件大小,仅限于普通文件 <blockquote data-source-line="136"> 练习:实现目录大小的统计,需要使用递归
打开文件(open)
fp = open(,)
+++在上面模式上添加一个字符b,表示二进制方式打开:rb、wb、ab、rb+、wb+、ab+<span style="color: #000000">
说明:没有b的方式文件读写都是str类型,带b的方式文件读写都是bytes
unicode:万国码,将全部国家的字符全部包含进去进行统一编码
utf-8:可变长度的unicode实现方案,而且对中文支持友好
s = b
<span style="color: #008000">#<span style="color: #008000"> 编码:str => bytes
s = <span style="color: #800000">'<span style="color: #800000">hello<span style="color: #800000">'.encode(<span style="color: #800000">'<span style="color: #800000">utf-8<span style="color: #800000">'<span style="color: #000000">) <span style="color: #0000ff">print<span style="color: #000000">(s) <span style="color: #008000">#<span style="color: #008000"> 解码:bytes => str 关闭文件 fp.close()
文件读写 <span style="color: #008000"># <span style="color: #008000"> 一次读取一行<span style="color: #008000"> <span style="color: #008000"> print(fp.readline())<span style="color: #008000"># <span style="color: #008000"> 读取所有内容,返回一个列表,一行一个元素<span style="color: #008000"> <span style="color: #008000"> lines = fp.readlines()<span style="color: #008000">#<span style="color: #008000"> 判断是否能够进行写操作<span style="color: #008000"> <span style="color: #008000"> print(fp.writable())<span style="color: #008000"><span style="color: #008000"> fp.write('world')<span style="color: #008000"><span style="color: #008000"> fp.write(b'gogogo')文件指针
<span style="color: #008000">#<span style="color: #008000"> 设置指针偏移<span style="color: #008000">
<span style="color: #008000"> 参数1:偏移量<span style="color: #008000">
<span style="color: #008000"> 参数2:参考位置,0表示开头,1表示当前,2表示末尾<span style="color: #008000"><span style="color: #008000"> 带b的方式打开,设置偏移没有问题<span style="color: #008000"><span style="color: #008000"> 不带b的方式打开,设置偏移会报错fp.seek(-5,1) 文件删除 os.remove(文件名)
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |