Python文件的属性获取,重命名,目录的创建,显示和改变

简介: Python文件的属性获取,重命名,目录的创建,显示和改变

1. 文件的属性获取

os.stat()函数可以获取文件的属性,该函数会返回一个和系统平台有关的stat_result对象,

具备一组可访问的属性,可以通过 stat_result.attribute 这样的格式来访问各个属性的值。

字 段 描 述
st_mode inode 保护模式
st_ino inode节点号
st_dev inode驻留的设备
st_nlink inode的链接数
st_uid 所有者的用户 ID
st_gid 所有者的组 ID
st_size 普通文件以字节为单位的大小,包含等待某些特殊文件的数据
st_atime 上次访问的时间
st_mtime 最后一次修改的时间
st_ctime 由操作系统报告的 ctime。在某些系统上(如 UNIX)是最新的元数据更改的时间,在其他系统上(如 Windows)是创建时间

例如:

os.path也有许多函数可以获取文件的属性。

os.path的常用函数

函数名 功能
os.path.exists(path) 它用于判断当前的目录或者文件是否存在,如果存在,则返回 True,否则返回 False。
os.path.abspath(path) 返回指定文件或目录的绝对路径。
os.path.isabs(path) 判断路径是否为绝对路径,如果是则返回 True,否则返回 False。
os.path.isfile(path) 判断 path 是否是文件,如果是则返回 True,否则返回 False。
os.path.isdir(path) 判断 path 是否是目录,如果是则返回 True,否则返回 False。
os.path.getsize(path) 返回文件或者目录的大小,单位是字节。如果 name 是目录,则返回 0L;如果 name 代表的目录或文件不存在,则会报 WindowsError 异常。
os.path.normpath(path) 把 path 转换为标准的路径,用于解决跨平台问题
os.path.split(path) 对文件路径进行分割,把最后一个“\”后面的文件从目录分割出来。它将 path分割成目录和文件名(事实上,如果提供一个不带文件名的参数(纯目录形式),它也会将最后一个目录作为文件名而分离,而不会判断文件或目录是否存在),并存于元组中返回,
os.path.dirname(path) 返回目录的名称,即返回 path 的目录路径,其实就是 os.path.split(path)的第一个元素。
os.path.basename(path) 返回文件的名称,即返回 path 最后的文件名。如果 path 以“/”或“\”结尾,则返回空值,即 os.path.split(path)的第二个元素。
os.path.splitext(path) 把路径和扩展名切分开。路径和扩展名被分开后可以直接赋值给两个变量,其实得到的是一个元组。
os.path.splitdrive(path) 拆分驱动器(盘符)和后面的文件路径,并以元组返回结果;主要针对 Windows有效,Linux 元组第一个元素总是空;返回结果是元组。
os.path.join(path,*paths) 把所有的路径组合成绝对路径。连接两个或更多的路径名,中间以“\”分隔,如果所给的参数都是绝对路径名,则最先给的绝对路径将会被丢弃

部分举例如下:

2. 文件重命名

在Python中用 rename()方法来实现文件的重命名

语法:

os.rename(当前的文件名, 新的文件名)

例:

3. 目录的创建

在Python中用 mkdir()方法用于在当前目录下创建新的目录

语法:

os.mkdir(目录名)

Python 用 os.makedirs()方法实现递归创建目录,类似 mkdir(),但创建的所有中级文件夹需要包含子目录。

语法:

os.makedirs(需要递归创建的目录 [,权限模式])

权限模式,需要 8 进制数字,默认模式为 0o777。每个 7 代表了 3 位值为 1 的二进

制位,分别对应属主、同组用户和其他用户的 rwx(读、写、执行)权限。

例:

import os
path = "D:\\test\\test1\\test1-1\\test1-1-1"
os.makedirs(path,0o755)

截图中的sys模块可加可不加

4. 显示和改变

getcwd()方法用于显示当前的工作目录。

例如:

import os 
print(os.getcwd())

chdir()方法用于改变当前的目录。类似于Linux中的cd命令

例如,进入"/test/test1"目录:

import os
os.chdir("/test/test1") 

5. 运行系统命令

os.system()函数用于直接执行操作系统 Shell 命令,以字符串形式将命令传入,然后在函数中调用操作系统的 API,从而实现一个和 Shell 命令等价的操作。如果命令运行成功且正常结束,则返回状态代码 0。

例:

import os
os.system('dir')

感谢大家的支持,关注,评论,点赞!

94

目录
相关文章
|
29天前
|
安全 Linux 数据安全/隐私保护
python知识点100篇系列(15)-加密python源代码为pyd文件
【10月更文挑战第5天】为了保护Python源码不被查看,可将其编译成二进制文件(Windows下为.pyd,Linux下为.so)。以Python3.8为例,通过Cython工具,先写好Python代码并加入`# cython: language_level=3`指令,安装easycython库后,使用`easycython *.py`命令编译源文件,最终生成.pyd文件供直接导入使用。
python知识点100篇系列(15)-加密python源代码为pyd文件
|
11天前
|
开发者 Python
Python中__init__.py文件的作用
`__init__.py`文件在Python包管理中扮演着重要角色,通过标识目录为包、初始化包、控制导入行为、支持递归包结构以及定义包的命名空间,`__init__.py`文件为组织和管理Python代码提供了强大支持。理解并正确使用 `__init__.py`文件,可以帮助开发者更好地组织代码,提高代码的可维护性和可读性。
15 2
|
1月前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
51 1
Python实用记录(十三):python脚本打包exe文件并运行
|
27天前
|
Java Python
> python知识点100篇系列(19)-使用python下载文件的几种方式
【10月更文挑战第7天】本文介绍了使用Python下载文件的五种方法,包括使用requests、wget、线程池、urllib3和asyncio模块。每种方法适用于不同的场景,如单文件下载、多文件并发下载等,提供了丰富的选择。
|
28天前
|
数据安全/隐私保护 流计算 开发者
python知识点100篇系列(18)-解析m3u8文件的下载视频
【10月更文挑战第6天】m3u8是苹果公司推出的一种视频播放标准,采用UTF-8编码,主要用于记录视频的网络地址。HLS(Http Live Streaming)是苹果公司提出的一种基于HTTP的流媒体传输协议,通过m3u8索引文件按序访问ts文件,实现音视频播放。本文介绍了如何通过浏览器找到m3u8文件,解析m3u8文件获取ts文件地址,下载ts文件并解密(如有必要),最后使用ffmpeg合并ts文件为mp4文件。
|
1月前
|
索引 Python
python-类属性操作
【10月更文挑战第11天】 python类属性操作列举
16 1
|
1月前
|
JSON 数据格式 Python
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
这篇文章介绍了一个Python脚本,用于统计TXT或JSON文件中特定单词的出现次数。它包含两个函数,分别处理文本和JSON文件,并通过命令行参数接收文件路径、目标单词和文件格式。文章还提供了代码逻辑的解释和示例用法。
41 0
Python实用记录(十四):python统计某个单词在TXT/JSON文件中出现的次数
|
1月前
|
Python
Python实用记录(十二):文件夹下所有文件重命名以及根据图片路径保存到新路径下保存
这篇文章介绍了如何使用Python脚本对TTK100_VOC数据集中的JPEGImages文件夹下的图片文件进行批量重命名,并将它们保存到指定的新路径。
32 0
|
2月前
|
Python
Python类中属性和方法区分3-8
Python类中属性和方法区分3-8
|
5月前
|
Python
Python尝试访问不存在的属性或方法
【6月更文挑战第2天】
51 3