os模块提供了使用操作系统功能的一些函数,如文件与目录的管理。这些函数如下:
函数名 | 说明 |
---|---|
os.rename(src, dst) | 修改文件名,src是源文件,dst是目标文件,他们都可以是相对当前路径或绝对路径表示的文件。 |
os.remove(path) | 删除path所指的文件,如果path是目录,则会引发OSError。 |
os.mkdir(path) | 创建path所指的目录,如果目录已存在,则会引发FileExistsError。 |
os.rmdir(path) | 删除path所指的目录,如果目录非空,则会引发OSError。 |
os.walk(top) | 遍历top所指的目录树,自顶向下遍历目录树。返回值是一个三元组(目录路径, 目录名列表, 文件名列表)。 |
os.listdir(dir) | 列出指定目录中的文件和子目录。 |
常用的属性:
os.curdir属性。获得当前目录。
os.pardir属性。获得当前父目录。
这里只给出walk()和listdir()的使用例子,其他的很容易理解和使用。
import os
print(os.listdir(os.curdir))
for item in os.walk(os.curdir):
print(item)
listdir 直接列出了当前目录里面的文件名,但是walk通过遍历将所有的文件以(目录路径, 目录名列表, 文件名列表)的格式列出来。
Python提供的os.path模块提供对路径、目录和文件等进行管理的函数。这些函数如下:
函数名 | 说明 |
---|---|
os.path.abspath(path) | 返回path的绝对路径。 |
os.path.basename(path) | 返回path路径的基础名部分,如果path指向的是一个文件,则返回文件名;如果path指向的是一个目录,则返回最后目录名。 |
os.path.dirname(path) | 返回path路径中目录部分。 |
os.path.exists(path) | 判断path文件是否存在。 |
os.path.isfile(path) | 如果path是文件,则返回True。 |
os.path.isdir(path) | 如果path是目录,则返回True。 |
os.path.getatime(path) | 返回最后次访问时间,返回值是一个UNIX时间戳(1970年1月1日00:00:00以来至现在的总秒数)。如果文件不存在或无法访问,则引发OSError。 |
os.path.getmtime(path) | 返回最后修改时间,返回值是一个UNIX时间戳。如果文件不存在或无法访问,则引发OSError。 |
os.path.getctime(path) | 返回创建时间,返回值是一个UNIX时间戳。如果文件不存在或无法访问,则引发OSError。 |
os.path.getsize(path) | 返回文件大小,以字节为单位。如果文件不存在或无法访问,则引发OSError。 |
from _datetime import datetime # 用来处理返回的时间戳
import os.path
file = 'test.txt'
print(os.path.abspath(file))
print(os.path.basename(file))
print(os.path.dirname(r'C:\Users\75549\PycharmProjects\untitled\test.txt')) # 输入要是路径
print(os.path.exists(file))
print(os.path.isfile(file))
print(os.path.isdir(file))
print(os.path.getsize(file))
print(datetime.fromtimestamp(os.path.getatime(file))) # 其他几个时间戳类似