os模块属性
属性名 | 描述 |
---|
linesep | 用于在文件中分隔行的字符串 |
sep | 用于分隔文件路径名的字符串 |
pathseq | 用于分隔文件路径的字符串 |
curdir | 当前工作目录的字符串名称 |
pardir | (当前工作目录的)父目录字符串名称 |
文件对象方法
属性名 | 描述 |
---|
file.close() | 关闭文件 |
file.fileno() | 返回文件的描述符 |
file.flush() | 刷新文件的内部换存区 |
file.isatty() | 判定file是否一个类tty设备 |
file.next() | 返回文件的下一行(类似于file.readline()),或在没有其他行时引发StopIteration异常 |
file.read(size=-1) | 从文件中读取size个字节,当未给定size或给负值的时候,读取剩余的所有字节,然后作为字符串返回 |
file.readline(size=-1) | 从文件中读取并返回一行(包括行结束符) |
file.readlines(sizhint=0) | 读取文件的所有行并作为一个列表返回(包括所有的行结束符)。如果给定sizhint且大于0,那么将返回总和大约为sizhint字节的行(大小由缓冲器容量的下一值决定) |
file.seek(off,whence=0) | 在文件中移动文件指针,从whence(0代表文件其始,1代表当前位置,2代表文件末尾)偏移off字节 |
file.tell() | 返回当前在文件中的位置 |
file.truncate(size=fill.tell()) | 返回文件到最大size字节,默认为当前文件位置 |
file.write(str) | 向文件写入字符串 |
file.writelines(seq) | 向文件写入字符串序列seq |
os 模块的文件/目录访问函数
方法 | 描述 |
---|
文件处理 |
mkfifo()/mknod() | 创建命名管道/创建文件/文件系统节点 |
remove()/unlink() | 删除文件 |
rename() | 重命名文件 |
stat() | 返回文件信息 |
symlink() | 创建符号链接 |
utime() | 更新时间截 |
tmpfile() | 创建并打开一个新的临时文件 |
walk() | 生成一个目录树下的所有文件名 |
目录/文件夹 |
chdir() | 改变当前工作目录 |
chroot() | 改变当前进程的根目录 |
listdir() | 列出指定目录的文件 |
getcwd() | 返回当前工作目录 |
mkdir | 创建(多层)目录 |
rmdir | 删除(多层)目录 |
访问/权限 |
access() | 检验权限模式 |
chmod() | 改变权限模式 |
chown() | 改变owner与group ID |
umask() | 设置默认权限模式 |
文件描述符操作 |
open() | 底层的操作系统open |
read/write() | 根据文件描述符谋取/写入数据 |
dup()/dup2() | 复制文件描述符/功能相同,但会复制到另一个文件描述符去 |
os.path 模块中的路径名访问函数
方法 | 描述 |
---|
分隔 |
basename() | 去掉目录路径,返回文件名 |
dirname() | 去掉文件名,返回目录路径 |
join() | 将分离的各部分合成一个路径名 |
split() | 返回(dirname(),basename())元组 |
splitdrive() | 返回(drivename,pathname)元组 |
信息 |
getatime() | 返回最近访问时间 |
getctime() | 返回文件创建时间 |
getmtime() | 返回文件最近修改时间 |
getsize() | 返回文件大小(以字节为单位) |
查询 |
exists() | 指定文件或目录是否存在 |
isabs() | 是否为绝对路径 |
isdir() | 是否为目录 |
isfile() | 是否为文件 |
islink() | 是否为符号链接 |
ismount() | 是否为一个挂载点 |
samefile() | 两个路径名是否指向同一个文件 |
连续删除一个目录树,如a文件夹下有b文件夹,b下有c文件夹,c文件夹下有test.txt。
import shutil
shutil.rmtree(r'D:\a')