模块是python中普通的文件吗_python之OS模块

防伪码:忘情公子著

上一篇讲的是python的文件对象,python的文件对象只能对普通文件以及某些特殊文件(如套接字、管道等)进行操作,而无法对目录进行操作。目录是属于文件系统的组成部分而不是文件内容的组成部分,而在python中,如果要与文件系统打交道,则要使用文件系统功能,也就是本篇要说的OS模块。

OS模块中的一些方法,其实就是把linux系统中的一些api给封装成了python的api,在python中可以直接调用。按文件系统的类型可以将这些api分为以下几种:

与目录相关:

chdir():改变当前工作目录,相当于linux中的cd命令

chroot():设定当前进程的根目录

listdir():列出指定目录下的所有文件名

mkdir():创建指定目录

makedirs():创建多级目录

getcwd():获取当前工作目录

rmdir():删除目录

removedirs():删除多级目录

与文件相关:

mkfifo():创建命名管道

mknod():创建设备文件

remove():删除文件

unlink():删除链接文件

rename():重命名

stat():返回文件状态信息

symlink():创建文件链接

utime():更新时间戳

tmpfile():以(w+b)模式创建并打开一个新的临时文件

walk():目录树生成器,相当于linux中的tree命令

与访问权限相关:

access():判定指定用户对某文件是否有访问权限,只能用uid和gid来表示用户和组

chmod():修改权限

chown():修改属主属组,只能用udi和gid来表示用户和组

umask():设置默认权限遮罩码

与文件描述符相关:

open():底层操作系统的open,可以理解为调用linux系统中C库中的open来打开文件

read():根据文件描述符来读

write():根据文件描述符来写

os.path:实现文件路径本身这个字符串的管理

basename():获取路径文件基名

dirname():获取路径目录名

join():将多个离散的文件路径整合成一个完整的路径

split():分割文件名,返回dirname(),basename()结果的元组

splitext():返回(filename,extension)元组,把文件名和扩展名切割开来

文件信息:

getatime():返回指定文件的最近一次的访问时间

getctime():返回指定文件的最近一次的属性修改时间

getmtime():返回指定文件的最近一次的内容修改时间

getsize():返回文件的大小

判断查询:

exists():判断指定文件是否存在

isabs():判断指定的路径是否为绝对路径

isdir():判断指定的文件是否存在且为目录

isfile():判断指定的文件是否存在且为文件

islink():判断指定的文件是否为符号链接

ismount():判断指定路径是否为挂载点

samefile():判断两个路径是否指向了同一个文件

在python中,无法直接将一个字典写入普通文件中,要想把字典写入普通文件,必须把字典对象流式化,在必要的时候还要能把它还原回原来的字典格式,而能够实现这个功能的模式有2种,这个过程被称作文件的持久存储。

对象持久存储:

pickle模块

dump():将对象存储到磁盘文件中

load():将指定的磁盘文件加载进某变量中

marshal模块

pickle模块和marshal模块都是将内容、对象存储在文件中。在python中还可以使用DBM接口将数据存储在数据库中。但是DBM接口仅仅只是让python能够将数据存储进数据库中,却无法实现流式化,如果既想实现流式化又想往数据库中存储则应使用shelve模块

这就是python中的OS模块常用的方法,仅以此篇作为python学习成长记录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
os 模块Python 用于访问操作系统功能的一个模块,它提供了一种便携式的方法来使用操作系统相关的功能,例如读写文件、创建进程等。下面是 os 模块的一些常用功能及用法: 1. 获取当前工作目录:os.getcwd() ```python import os print(os.getcwd()) # 打印当前工作目录 ``` 2. 改变当前工作目录:os.chdir(path) ```python import os os.chdir('/Users/username/Desktop') # 将当前工作目录改变为桌面 ``` 3. 列出目录下的所有文件和子目录:os.listdir(path) ```python import os print(os.listdir('/Users/username/Desktop')) # 列出桌面下的所有文件和子目录 ``` 4. 创建目录:os.mkdir(path) ```python import os os.mkdir('/Users/username/Desktop/new_dir') # 在桌面上创建一个名为 new_dir 的文件夹 ``` 5. 删除目录:os.rmdir(path) ```python import os os.rmdir('/Users/username/Desktop/new_dir') # 删除桌面上的名为 new_dir 的文件夹 ``` 6. 判断路径是否为文件os.path.isfile(path) ```python import os print(os.path.isfile('/Users/username/Desktop/test.txt')) # 判断桌面上的 test.txt 是否为文件 ``` 7. 判断路径是否为目录:os.path.isdir(path) ```python import os print(os.path.isdir('/Users/username/Desktop/new_dir')) # 判断桌面上的 new_dir 是否为目录 ``` 8. 判断路径是否存在:os.path.exists(path) ```python import os print(os.path.exists('/Users/username/Desktop/test.txt')) # 判断桌面上的 test.txt 是否存在 ``` 9. 删除文件os.remove(path) ```python import os os.remove('/Users/username/Desktop/test.txt') # 删除桌面上的 test.txt 文件 ``` 总之,os 模块提供了很多强大的功能,可以让我们更加方便地操作文件和目录,同时也可以更好地与操作系统进行交互。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值