Python中标准库OS的常用方法总结大全


Posted in Python onJuly 19, 2017

前言

我们经常会与文件和目录打交道,对于这些操作python提供了一个os模块,里面包含了很多操作文件和目录的函数。在写一些系统脚本或者自动化运维脚本的时候经常会用到这个 os 库,所以这里做个整理,方便需要的时候或者需要的朋友查找学习,下面话不多说,来一起看看详细的介绍吧。

1、os.sep

获得当前操作系统使用的目录分隔符,比如 Windows 就会得到\而 Linux/Unix 就会得到/
os.name

获得当前使用的操作系统,Windows 是 NT 内核,所以会得到nt,而 Linux/Unix 用户则会得到posix

2、os.getcwd()

获得当前工作目录,即当前 Python 脚本工作的目录路径。

3、os.getenv()

用来获得环境变量

os.getenv('PATH')

4、os.environ

可以获取并修改环境变量

print(os.environ['PATH'])
os.environ += 'D:/testdir/bin/'
print(os.environ["PATH"])

5、os.listdir()

列出某目录下所有的目录和文件

print(os.listdir())

6、os.remove()

删除文件

os.remove('D:/test.file')

7、os.system()

运行 Shell 或者 CMD 命令

os.system('ifconfig')

8、os.linesep

获取当前平台使用的行终止符。例如,Windows 使用\r\n,Linux 使用\n而 Mac 使用\r。

9、os.path.split()

获得一个列表,list[0] 是路径的,list[1] 是文件名

path = 'D:/game/gtav/bin/gtav.exe'
print(os.path.split(path)[0])
print(os.path.split(path)[1])

10、os.path.isfile() os.path.isdir()

判断路径是不是文件 / 目录

print(os.path.isfile('D:/game/gtav/bin/gtav.exe'))
print(os.path.isdir('D:/game/gtav/bin'))

11、os.path.existe()

函数用来检验给出的路径是否真地存在

path = 'D:\\hadoop-2.6.5\\bin'
print(os.path.exists(path))
path = 'D:\\hadoop-2.6.5\\bin\\hadoop'
print(os.path.exists(path))

12、os.chdir(dirname)

切换工作目录,相当于cd的命令

os.chdir('D:/game/gtav/')
print(os.getcwd())

13、os.path.getsize(name)

获取文件大小,以字节为单位

size = os.path.getsize('D:/iso/debian-8.6.0-amd64-DVD-1.iso')
print(size/1024/1024/1024, 'GB')

14、os.path.abspath(name)

获取绝对路径,如果在 Python 工作目录下有一个文件file.txt,那么我就可以直接open('file.txt'),也可以用该方法获得其绝对路径print(os.path.abspath('file.txt'))。也可以用来规范路径字符串print(os.path.abspath('D:/game\gtav\bin/gtav.exe'))

15、os.path.normpath(path)

专门用来规范路径

path = 'D:/test/sdf\zfb'
print(os.path.normpath(path))

16、os.path.splitext()

获取文件名和扩展名

path = '/home/shawn/hello.py'
print(os.path.splitext(path))

17、os.path.join(path,name)

连接目录和文件名,可以不用自己添加分隔符,能减少 bug 率提升跨平台性

18、os.path.basename(path)

获取路径中的文件名

19、os.path.dirname(path)

获取路径中的目录名

总结

以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 Python
Python3控制路由器——使用requests重启极路由.py
May 11 Python
python实现八大排序算法(2)
Sep 14 Python
Python 和 JS 有哪些相同之处
Nov 23 Python
Python+OpenCV目标跟踪实现基本的运动检测
Jul 10 Python
Python常见内置高效率函数用法示例
Jul 31 Python
python中的tcp示例详解
Dec 09 Python
python如何实现不用装饰器实现登陆器小程序
Dec 14 Python
在tensorflow中设置保存checkpoint的最大数量实例
Jan 21 Python
Python阶乘求和的代码详解
Feb 14 Python
基于python3生成标签云代码解析
Feb 18 Python
python上传时包含boundary时的解决方法
Apr 08 Python
spyder常用快捷键(分享)
Jul 19 #Python
JPype实现在python中调用JAVA的实例
Jul 19 #Python
简单谈谈Python中的json与pickle
Jul 19 #Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 #Python
高效测试用例组织算法pairwise之Python实现方法
Jul 19 #Python
Python实现将文本生成二维码的方法示例
Jul 18 #Python
Python实现动态加载模块、类、函数的方法分析
Jul 18 #Python
You might like
PHP 中执行系统外部命令
2006/10/09 PHP
php自定义加密与解密程序实例
2014/12/31 PHP
form自动提交实例讲解
2017/07/10 PHP
分享一个自定义的console类 让你不再纠结JS中的调试代码的兼容
2012/04/20 Javascript
在浏览器窗口上添加遮罩层的方法
2012/11/12 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
2013/05/08 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
2016/06/08 Javascript
javascript运算符——位运算符全面介绍
2016/07/14 Javascript
微信公众号支付H5调用支付解析
2016/11/04 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
js仿百度音乐全选操作
2017/01/13 Javascript
ES6中Generator与异步操作实例分析
2017/03/31 Javascript
Vue.js手风琴菜单组件开发实例
2017/05/16 Javascript
Angular 5.0 来了! 有这些大变化
2017/11/15 Javascript
Vue中keep-alive组件作用详解
2020/02/04 Javascript
python操作mongodb根据_id查询数据的实现方法
2015/05/20 Python
python爬虫实战之最简单的网页爬虫教程
2017/08/13 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
2018/03/29 Python
Tensorflow 训练自己的数据集将数据直接导入到内存
2018/06/19 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
python中metaclass原理与用法详解
2019/06/25 Python
python抓取多种类型的页面方法实例
2019/11/20 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
Python matplotlib图例放在外侧保存时显示不完整问题解决
2020/07/28 Python
Python常用数字处理基本操作汇总
2020/09/10 Python
python爬虫用scrapy获取影片的实例分析
2020/11/23 Python
浅析图片上传及canvas压缩的流程
2020/06/10 HTML / CSS
LivingSocial英国:英国本地优惠
2019/02/22 全球购物
美术师范毕业生自荐信
2013/11/16 职场文书
银行职业规划书范文
2013/12/28 职场文书
电气自动化个人求职信范文
2014/02/03 职场文书
2014两会学习心得:时代的发展
2014/03/17 职场文书
2015年库房工作总结
2015/04/30 职场文书
CSS 制作波浪效果的思路
2021/05/18 HTML / CSS
我去timi了,一起去timi是什么意思?
2022/04/13 杂记
Redis实现一个账号只能登录一个设备
2022/04/19 Redis