Python学习笔记(15)- os\os.path 操作文件
2018-01-18 14:14
543 查看
程序1
编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图:
View Code
os模块中关于文件/目录常用的函数使用方法
os.path模块中关于路径常用的函数使用方法
张老师提供咨询服务啦:-->点击查看 <--
往期回顾
Python学习笔记(1)-介绍
Python学习笔记(2)
Python学习笔记(3)-数据类型
Python学习笔记(4)-循环
Python学习笔记(5)-循环
Python学习笔记(6)-循环
Python学习笔记(7)
Python学习笔记(8)-四个小程序
Python学习笔记(9)-函数
Python学习笔记(10)-回文联和统计入参
Python学习笔记(11)-递归
Python学习笔记(12)-字典
Python学习笔记(13)-集合
Python学习笔记(14)-文件
Python学习笔记(15)-文件
编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图:
1 import os 2 3 4 def count_size(path): 5 filesize = {} 6 all_files = os.listdir(path) 7 for eachfile in all_files: 8 if os.path.isfile(os.path.join(path, eachfile)): 9 size = os.path.getsize(os.path.join(path, eachfile)) 10 filesize[eachfile] = size 11 #filesize.setdefault(eachfile, os.path.getsize(os.path.join(path, eachfile))) 12 13 for each in filesize.items(): 14 print("%s【%sBytes】" % (each[0], each[1])) 15 16 17 path = input('输入要统计的目录: ') 18 count_size(path)
View Code
os模块中关于文件/目录常用的函数使用方法
函数名 | 使用方法 |
getcwd() | 返回当前工作目录 |
chdir(path) | 改变工作目录 |
listdir(path='.') | 列举指定目录中的文件名('.'表示当前目录,'..'表示上一级目录) |
mkdir(path) | 创建单层目录,如该目录已存在抛出异常 |
makedirs(path) | 递归创建多层目录,如该目录已存在抛出异常,注意:'E:\\a\\b'和'E:\\a\\c'并不会冲突 |
remove(path) | 删除文件 |
rmdir(path) | 删除单层目录,如该目录非空则抛出异常 |
removedirs(path) | 递归删除目录,从子目录到父目录逐层尝试删除,遇到目录非空则抛出异常 |
rename(old, new) | 将文件old重命名为new |
system(command) | 运行系统的shell命令 |
walk(top) | 遍历top路径以下所有的子目录,返回一个三元组:(路径, [包含目录], [包含文件])【具体实现方案请看:第30讲课后作业^_^】 |
以下是支持路径操作中常用到的一些定义,支持所有平台 | |
os.curdir | 指代当前目录('.') |
os.pardir | 指代上一级目录('..') |
os.sep | 输出操作系统特定的路径分隔符(Win下为'\\',Linux下为'/') |
os.linesep | 当前平台使用的行终止符(Win下为'\r\n',Linux下为'\n') |
os.name | 指代当前使用的操作系统(包括:'posix', 'nt', 'mac', 'os2', 'ce', 'java') |
函数名 | 使用方法 |
basename(path) | 去掉目录路径,单独返回文件名 |
dirname(path) | 去掉文件名,单独返回目录路径 |
join(path1[, path2[, ...]]) | 将path1, path2各部分组合成一个路径名 |
split(path) | 分割文件名与路径,返回(f_path, f_name)元组。如果完全使用目录,它也会将最后一个目录作为文件名分离,且不会判断文件或者目录是否存在 |
splitext(path) | 分离文件名与扩展名,返回(f_name, f_extension)元组 |
getsize(file) | 返回指定文件的尺寸,单位是字节 |
getatime(file) | 返回指定文件最近的访问时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算) |
getctime(file) | 返回指定文件的创建时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算) |
getmtime(file) | 返回指定文件最新的修改时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算) |
以下为函数返回 True 或 False | |
exists(path) | 判断指定路径(目录或文件)是否存在 |
isabs(path) | 判断指定路径是否为绝对路径 |
isdir(path) | 判断指定路径是否存在且是一个目录 |
isfile(path) | 判断指定路径是否存在且是一个文件 |
islink(path) | 判断指定路径是否存在且是一个符号链接 |
ismount(path) | 判断指定路径是否存在且是一个挂载点 |
samefile(path1, paht2) | 判断path1和path2两个路径是否指向同一个文件 |
往期回顾
Python学习笔记(1)-介绍
Python学习笔记(2)
Python学习笔记(3)-数据类型
Python学习笔记(4)-循环
Python学习笔记(5)-循环
Python学习笔记(6)-循环
Python学习笔记(7)
Python学习笔记(8)-四个小程序
Python学习笔记(9)-函数
Python学习笔记(10)-回文联和统计入参
Python学习笔记(11)-递归
Python学习笔记(12)-字典
Python学习笔记(13)-集合
Python学习笔记(14)-文件
Python学习笔记(15)-文件
相关文章推荐
- python学习笔记24(路径与文件 (os.path包, glob包))
- Python--小甲鱼学习笔记--第30课:文件系统(os、os.path)
- Python学习笔记10:标准库之路径和文件(os.path包,glob包)
- Python学习笔记(2)比特操作、类、文件操作
- 【python学习笔记】pthon3.x中的文件读写操作
- python 系统学习笔记(八)---文件操作
- python 系统学习笔记(十二)---os os.path os.walk
- Scala学习笔记15【Scala文件操作】
- Python学习笔记 -- 第六章 文件操作
- python学习笔记25(文件管理 os包)
- Python学习笔记3:简单文件操作
- python 系统学习笔记(八)---文件操作
- Python入门笔记(15):对文件的操作(1)
- python学习笔记17:文件操作
- Python 学习笔记——文件对象和操作
- Python学习笔记——文件对象和操作(2)
- Python学习笔记——文件对象和操作(1)
- python 系统学习笔记(十二)---os os.path os.walk
- python 学习笔记(一)—目录文件的操作