python os模块简单应用示例

yipeiwu_com7年前Python基础

本文实例讲述了python os模块简单应用。分享给大家供大家参考,具体如下:

举例中的目录形式如下所示:

In [36]: pwd
Out[36]: '/home/python/Desktop/code'
In [37]: ls
hello.py hello.txt test.py 文件夹01/ 文件夹02/ 文件夹03/

1.当前路径及路径下的文件

os.getcwd():查看当前所在路径。

os.listdir(path):列举目录下的所有文件。返回的是列表类型。

In [1]: import os
In [2]: os.getcwd()
Out[2]: '/home/python/Desktop/code'
In [3]: os.listdir(os.getcwd())
Out[3]: ['文件夹01', '文件夹03', '文件夹02', 'test.py', '.idea', 'hello.txt', 'hello.py']

2.绝对路径

os.path.abspath(path):返回path的绝对路径。

In [4]: os.path.abspath('.')
Out[4]: '/home/python/Desktop/code'
In [5]: os.path.abspath('..')
Out[5]: '/home/python/Desktop'

3.查看路径的文件夹部分和文件名部分

os.path.split(path):将路径分解为(文件夹,文件名),返回的是元组类型。可以看出,若路径字符串最后一个字符是,则只有文件夹部分有值;若路径字符串中均无,则只有文件名部分有值。若路径字符串有\,且不在最后,则文件夹和文件名均有值。且返回的文件夹的结果不包含.

In [6]: os.path.split('.')
Out[6]: ('', '.')
In [7]: os.path.split('/home')
Out[7]: ('/', 'home')
In [8]: os.path.split('/home/Desktop')
Out[8]: ('/home', 'Desktop')
In [9]: os.path.split('/home/Desktop/code')
Out[9]: ('/home/Desktop', 'code')
In [10]: os.path.split('/home/Desktop/code/')
Out[10]: ('/home/Desktop/code', '')

os.path.join(path1,path2,…):将path进行组合,若其中有绝对路径,则之前的path将被删除。

In [12]: os.path.join('/home', 'Desktop')
Out[12]: '/home/Desktop'
In [13]: os.path.join('/home/Desktop', 'code')
Out[13]: '/home/Desktop/code'

os.path.dirname(path):返回path中的文件夹部分,结果不包含'\'

In [14]: os.path.dirname(os.getcwd())
Out[14]: '/home/python/Desktop'

os.path.basename(path):返回path中的文件名。

In [15]: os.path.basename(os.getcwd())
Out[15]: 'code'
In [16]: os.path.basename('.')
Out[16]: '.'
In [17]: os.path.basename('/home/Desktop/code')
Out[17]: 'code'
In [18]: os.path.basename('/home/Desktop/code/')
Out[18]: ''
In [19]: os.path.basename('/home/Desktop/code/hello.txt')
Out[19]: 'hello.txt'

4.查看文件时间

os.path.getmtime(path):文件或文件夹的最后修改时间,从新纪元到访问时的秒数。

In [20]: os.path.getmtime(os.getcwd())
Out[20]: 1503292529.869008

os.path.getatime(path):文件或文件夹的最后访问时间,从新纪元到访问时的秒数

In [21]: os.path.getatime(os.getcwd())
Out[21]: 1503292529.8930087

os.path.getctime(path):文件或文件夹的创建时间,从新纪元到访问时的秒数。

In [22]: os.path.getctime(os.getcwd())
Out[22]: 1503292529.869008

5.查看文件大小

os.path.getsize(path):文件或文件夹的大小。

In [25]: os.getcwd()
Out[25]: '/home/python/Desktop/code'
In [26]: os.path.getsize('/home/python/Desktop/code')
Out[26]: 4096
In [28]: os.path.getsize('/home/python/Desktop/code/hello.txt')
Out[28]: 61

6.查看文件是否存在

os.path.exists(path):文件或文件夹是否存在,返回True 或 False。

In [29]: os.path.exists('/home/python/Desktop/code/hello.txt')
Out[29]: True
In [30]: os.path.exists('/home/python/Desktop/code/hehe.txt')
Out[30]: False

7.一些表现形式参数

os中定义了一组文件、路径在不同操作系统中的表现形式参数,如:

In [31]: os.sep
Out[31]: '/'
In [32]: os.extsep
Out[32]: '.'
In [33]: os.linesep
Out[33]: '\n'
In [34]: os.pathsep
Out[34]: ':'

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python Web框架Pylons中使用MongoDB的例子

Pylons 经过漫长的开发,终于放出了 1.0 版本。对于正规的产品开发来说,1.0 版本的意义很大,这表明 Pylons 的 API 终于稳定下来了。 Pylons 虽是山寨 Rai...

python: line=f.readlines()消除line中\n的方法

python: line=f.readlines()消除line中\n的方法

测试代码 #!/ust/bin/env python3 f = open("name.txt") date = f.readlines() print(date) f.close(...

python 字符串转列表 list 出现\ufeff的解决方法

如下所示: #文件内容 lisi lock = open("lock_info.txt", "r+",encoding="utf-8") lock_line = lock.readl...

详解Python里使用正则表达式的ASCII模式

ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码。计算机世界里一开始只有英文,而单字节可...

tensorflow构建BP神经网络的方法

之前的一篇博客专门介绍了神经网络的搭建,是在python环境下基于numpy搭建的,之前的numpy版两层神经网络,不能支持增加神经网络的层数。最近看了一个介绍tensorflow的视频...