python文件操作

34 篇文章 1 订阅
17 篇文章 0 订阅

os库和常用命令

在我们要对文件进行操作之前,必须先了解os标准库,文件操作的基础的是建立在操作系统上面完成的,现在操作系统很多都不会让普通的程序直接操作磁盘。我们的python也是一样的。而python对文件操作很多要依赖os库。

os库调用方法

import os

然后我们需要熟悉几个os库常用的命令。

os.listdir()	列出当前目录下的所有文件和文件夹(包括被隐藏的)
os.system()	运行shell命令(接收命令行列出当前目录下的所有文件和文件夹参数)
os.sep()	更改操作系统中的路径分隔符
os.getcwd()	获取当前路径(中间会自动添上一个路径分隔符)
os.walk	循环遍历目录,返回tuple表,表中每一个tuple包含该层文件、文件夹及该层父节点
os.path.isfile()	是否是文件
os.path.isdir()	是否是文件夹
os.path.exists()	路径是否存在
os.path.abspath()	如果输入路径是相对路径,则转换为绝对路径
os.path.dirname()	获取指定目录的父目录路径
os.path.pardir	获取当前目录的父目录路径
os.pardir()	获取当前目录的父目录路径
os.path.split()	将目录和文件名分割开,组成二元组返回
os.remove()	删除指定文件
os.rmdir()	删除空文件夹
os.mkdir()	新建文件夹
os.makedirs( , exist_ok=True)	创建递归的目录树(exist_ok是py3.2才加入的参数)
os.chdir()	改变当前目录到指定目录中
os.rename(path1 ,path2)	重命名文件
os.chmod(path ,mode)	改变文件权限模式
os.access(path ,mode)	检验文件权限模式
os.sep	输出操作系统特定的路径分隔符。win下为”\\”,macx下为”/”
os.linesep	输出当前平台使用的行终止符
os.pathsep	输出用于分割文件路径的字符串
os.name	输出字符串指示当前使用平台。win->’nt’; mac->’posix’
os.environ	获取系统环境变量

文件操作几个常用os命令

1.os.getcwd()查看当前工作路径
在这里插入图片描述
2.os.chdir() 改变当前目录到指定目录中,一般我们对文件操作都是指定文件夹下面进行,一般不会用工作路径。这个时候需要将路径切换到我们要进行操作的位置。
在这里插入图片描述
3. os.mkdir() 在当前工作路径下面新建文件夹,当你要创建的文件夹存在时,会报错。
在这里插入图片描述
4.os.rmdir() 在当前工作路径下面删除空文件夹,当要删除的文件不存在时,也会报错。
在这里插入图片描述
5.os.listdir() 列出当前目录下的所有文件和文件夹(包括被隐藏的)
在这里插入图片描述
至于更多os标准库的用法,我在这里就不重复说,网上都有相关详细的介绍,下面我就带大家了解一下文件这一块。

文件

文件是一个存储在辅助存储器上的数据序列,可以包含任何 数据内容。概念上,文件是数据的集合和抽象,类似地,函 数是程序的集合和抽象。用文件形式组织和表达数据更有效 也更为灵活。文件包括两种类型:文本文件和二进制文件。

文件概述

二进制文件直接由比特0和比特1组成,没有统一字符 编码,文件内部数据的组织格式与文件用途有关。二进制 文件和文本文件最主要的区别在于是否有统一的字符编码 无论文件创建为文本文件或者二进制文件,都可以用 “文本文件方式”和“二进制文件方式”打开,打开后的 操作不同。
对文件操作的函数open()和close()是内置函数,但这两个函数出现时都是成对出现的,如果你打开一个文件,进行操作,不关闭文件,这样文件一直会被显示占用。
大家想了解open()函数的详细用法,可以用help()函数,讲解也很详细。
在这里插入图片描述
下面我和大家主要介绍一下open()函数打开文件的几种命令。

r	以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
w	打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a	打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
rb	以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
wb	以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
ab	以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
r+	打开一个文件用于读写。文件指针将会放在文件的开头。
w+	打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a+	打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
rb+	以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
wb+	以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
ab+	以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

说这么多和大家讲一个简单例子吧
1.如果没有这个文件,你用‘r’读会报错,说没有这个文件,对文件操作要注意打开之后记得关闭。
在这里插入图片描述
2.'w’写是覆盖写的操作,如果你想补充内容最好不要用‘w’,这会覆盖原有的内容,最好的方法是采用‘a’的操作。
在这里插入图片描述
open()第个三参数是编码,但一般默认采用的是utf-8编码,但如果你需要其他编码可以适当改一下编码就行啦。
在这里插入图片描述
在对文件操作的时候,一般我们用open()和close()一起使用。但最常用采用是with上下文管理器来控制关闭,with语句在我们打开文件之后执行所有操作后自动关闭。
在这里插入图片描述
基础的文件操作就这些了,如果想深入了解可以查阅一些官方文档。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值