Python3 学习第九弹: 模块学习二之文件管理模块
os模块
提供访问操作系统的接口 1> name
获得当前操作系统
其中 'nt' 是 windows 'posix' 是 linux 2> environ
获得当前系统的环境变量的字典,(变量名:变量值) 3> getcwd()
获得当前工作目录 4> getgid()
返回当前进程的真实组id 5> getlogin()
返回当前登录的用户名 6> getpid()
返回当前进程的pid 7> system(command)
运行shell命令
在linux下是运行终端,在windows下是运行cmd,故命令不同
因为能够运行shell命令,故可以通过这个来打开软件
例如在'C:\\'下有一个浏览器
>>> os.system(r'C:\firefox.exe')
通过这样就可以打开firefox浏览器
返回值只为0(成功),1,2
8> popen(command)
与system函数几乎相同,不同在于popen可以返回命令获取的值,常常用于'管道' 9> startfile(path)
直接运行path路径下软件 #以下命令均与linux下终端控制的文件管理命令几乎相同 10> mkdir(path)
创建新目录,相当于linux下 $mkdir 命令 11> rmdir(path)
删除空目录,相当于linux下 $rmdir 命令 12> list(path)
返回路径目录中所有文件及文件夹,相当于linux下 $ls 命令 13> remove(path)
删除文件,相当于linux下 $rm 命令 14> rename(src, dst)
重命名文件,src与dst分别为命名前后的文件路径,也就是说不仅可以对文件进行重命名,同时可以改变文件的路径,相当于剪切 15> chmod(path, mode)
改变文件的权限,相当于linux下 $chmod 命令 16> chown(path, uid, gid)
改变文件拥有者和拥有组,相当于linux下 $chown 命令 17> stat(path)
查看文件的属性,返回值中st_atime(访问时间), st_mtime(修改时间), st_ctime(创建时间), st_size(文件大小/字节) 相当于linux下 $ls -l 命令 18> symlink(src, dst)
为路径为src的文件在路径dst上创建软链接,相当于linux下 $ln -s 命令 Add: 17> walk(path, topdown = True, onerror = None)
以递归的方式遍历path目录
a) 每次遍历到一个目录,返回三元组(文件目录绝对路径,当前目录的文件夹,当前目录的文件)
b) topdown为true时,表示先遍历当前目录的文件,再遍历当前目录的子目录。反之,topdown为false时,先遍历当前目录的子目录,返回子目录下的文件,最后返回当前目录下的文件
c) onerror为none时,表示忽略文件遍历时产生的错误,否则可以自定义添加函数对提示错误信息后进行操作 >>> path = r'D:\\Test'
>>> for root, dirs, files in os.walk(path)
print(root, dirs, files)
os.path模块
提供许多处理长文件名(路径名)的函数(或者说你就不需要处理前后斜杠)
1> basename(path)
去掉目录路径,返回文件名 2> dirname(path)
去掉文件名,返回目录路径 3> split(path)
返回(路径, 文件名)的元组 4> splitext(path)
返回(文件名, 扩展名)的元组 5> join(path, *path)
给出路径中所有文件名生成路径
>>> os.path.join('..', 'a', 'b', 'new.txt')
'..\\a\\b\\new.txt' # 检查文件名(路径)的特征
6> exists(path)
判断文件或目录是否存在 7> isdir(path)
判断是否为文件夹 8> isfile(path)
判断是否为文件 9> islink(path)
判断是否为链接,若系统不支持链接形式,返回False 10> isabs(path)
判断是否为绝对路径 11> abspath(path)
返回该文件的绝对路径 # 文件信息
12> getsize(path)
返回文件大小 13> getatime(path)
返回文件最近访问时间 14> getctime(path)
返回文件创建时间 15> getmtime(path)
返回文件最近修改时间
返回时间可用time中的gmtime获得标准输出时间 16> 调用一些路径标识符(大都为linux标准)
altsep = '/'
curdir = '.'
defpath = r'.;C:\bin'
devnull = 'nul'
extsep = '.'
pardir = '..'
pathsep = ';'
sep = r'\'
supports_unicode_filenames = True
shutil模块
提供高层次的文件操作接口 1> copy(src, dst)
复制文件,从src到dst,相当于linux下 $cp 命令 2> move(src, dsc)
移动文件,从src到dst,相当于linux下 $mv 命令
Python3 学习第九弹: 模块学习二之文件管理模块的更多相关文章
- python模块知识二 random -- 随机模块、序列化 、os模块、sys -- 系统模块
4.random -- 随机模块 a-z:97 ~ 122 A-Z :65 ~ 90 import random #浮点数 print(random.random())#0~1,不可指定 print( ...
- Python常用模块学习
1.模块介绍 2.time & datetime模块 3.random 4.os 5.sys 6.shutil 7.json&pickle 8.shelve 9.xml处理 10.ya ...
- ansible笔记(8):常用模块之系统类模块(二)
ansible笔记():常用模块之系统类模块(二) user模块 user模块可以帮助我们管理远程主机上的用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作. 此处我们介绍一些user模块 ...
- Py修行路 python基础 (二十)模块 time模块,random模块,hashlib模块,OS及sys模块
一.前提介绍: 可以开辟作用域的只有类,函数,和模块 for循环 if,else: 不能开辟自己的作用域 避免程序复用和重复调用,将这些写到一个.py文件中,做成一个模块,进行调 ...
- Python3 学习第一弹:基本数据类型
本人学习主要从<python基础教程第二版>,<dive into python3>等书籍,及一些网上大牛的博客中学习特别是Python官方文档<Python Tutor ...
- 『MXNet』第九弹_分类器以及迁移学习DEMO
解压文件命令: with zipfile.ZipFile('../data/kaggle_cifar10/' + fin, 'r') as zin: zin.extractall('../data/k ...
- Python学习 :常用模块(二)
常用模块(二) 四.os模块 os模块是与操作系统交互的一个接口,用于对操作系统进行调用 os.getcwd() # 提供当前工作目录 os.chdir() # 改变当前工作目录 os.curdir( ...
- Python学习笔记总结(二)函数和模块
一.函数 函数的作用:可以计算出一个返回值,最大化代码重用,最小化代码冗余,流程的分解. 1.函数相关的语句和表达式 语句 例子 Calls myfunc(‘diege', ...
- Python 学习 第九篇:模块
模块是把程序代码和数据封装的Python文件,也就是说,每一个以扩展名py结尾的Python源代码文件都是一个模块.每一个模块文件就是一个独立的命名空间,用于封装顶层变量名:在一个模块文件的顶层定义的 ...
随机推荐
- Unity3D 将 Unity 嵌入WPF中的一些研究笔记
一. 在 WPF 中使用 WebBrowser,直接打开 WebPlayer.html 以这种方式有一个问题是. 无法在 WebBrowser 的上面 放置其它的控件, 在运行时,都不会显示 . 以 ...
- 使用Assetbundle时可能遇到的坑
原地址:http://www.cnblogs.com/realtimepixels/p/3652128.html 一 24 十一郎未分类 No Comments 转自 http://www.unity ...
- 10个免费开源的JS音乐播放器插件
点这里 音乐播放器在网页设计中有时候会用到,比如一些时尚类.音乐或影视类等项目,但这些 网页播放器 插件比较少见,所以这里为大家整理一个集合,也许会有用到的时候. 下面整理的播放器有些是支持自适应的, ...
- 关闭WordPress自动加载的Open Sans字体-WP访问过慢原因
序言 wordpress大概从wp-3.8开始会自动加载Open Sans字体,并引用Google上面的CSS样式.而最近谷歌经常打不开,导致网站访问速度过慢,严重的会拖慢几十秒.Open Sans字 ...
- hdu 3092 Least common multiple
思路: 容易知道,分解成素数的lcm肯定是最大的,因为假设分解成2个合数,设定x为他们的 最大公约数, 那么他们的最小公倍数就要减少x倍了 然后如果是素数之间的最小公倍数,那么就只是他们的乘积,同样的 ...
- HDU 5596/BestCoder Round #66 (div.2) GTW likes math 签到
GTW likes math Memory Limit: 131072/131072 K (Java/Others) 问题描述 某一天,GTW听了数学特级教师金龙鱼的课之后,开始做数学<从自主 ...
- Quartz 2D Programming Guide
Quartz 2D Programming Guide 官方文档: Quartz 2D Programming Guide 译文: Quartz 2D编程指南(1) - 概览 Quartz 2D编程 ...
- hdu 4112 Break the Chocolate(ceil floor)
规律题: #include<stdio.h> #include<math.h> #define eps 1e-8 int main() { int _case; int n,m ...
- 关于HTTP协议的学习
HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP 协议的详细内容请参考RFC2616.HTTP协议采用了请求/响应模型.客 ...
- DB2行转列、列转行等操作
DB2 行转列 ----start 在网上看到这样一个问题:(问题地址:http://www.mydb2.cn/bbs/read.php?tid=1297&page=e&#a) 班级 ...