python 标准库模块之 os 模块

os 模块

作用

调用系统模块

常见用法

os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径

os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd

os.curdir 返回当前目录: (‘.‘)

os.makedirs(‘dirname1/dirname2‘) 创建多层目录

os.removedirs(‘dirname1‘) 目录为空则删除

os.mkdir(‘dirname‘) 生成单级目录;相当于shell中mkdir dirname

os.rmdir(‘dirname‘) 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname

os.listdir(‘dirname‘) 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印

os.remove() 删除一个文件

os.rename("oldname","newname") 文件重命名

os.stat(‘path/filename‘) 获取文件的目录信息

os.sep 输出操作系统特定的路径分隔符,win下为\,Linux下为/

os.linesep 输出当前平台使用的行终止符,win下为\t\n,Linux下为\n

os.pathsep 输出用于分割文件路径的字符串

os.name 输出字符串指示当前使用平台。win->nt; Linux->posix

os.system("bash command") 运行shell 命令

os.environ 获取当前系统的环境变量

os.path.abspath(path) 返回path规范化的绝对路径

os.path.split(path) 将path 分割成目录 和文件二元组返回

os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素

os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素

os.path.exists(path) 判断path 路径是否存在,存在就为true ,否则为false

os.path.isabs(path) 如果path是绝对路径,返回True

os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False

os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False

os.path.join(path1[, path2[,...]]) 将多个路径组合到一起在返回

os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间

os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间

示列演示

获取当前工作目录

>> import os
>> os.getcwd()
‘/home/tomcat‘

切换工作路径

>> os.chdir(‘python_test‘)
>> os.getcwd()
‘/home/tomcat/python_test‘

创建多层目录
os.makedirs(‘a1/a2‘)

删除多层目录

>> os.removedirs(‘a1‘)
报错
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/python/lib/python3.6/os.py", line 259, in removedirs
rmdir(name)
OSError: [Errno 39] Directory not empty: ‘a1‘

>> os.removedirs(‘a1/a2‘)

创建单层目录

>> os.mkdir(‘a1‘)
>> os.chdir(‘a1‘)
>> os.getcwd()
‘/home/tomcat/python_test/a1‘

删除单层目录

>> os.rmdir(‘a1‘)

展示当前目录的内容

>> os.listdir(os.getcwd())
[‘server5.py‘, ‘cleint5-1.py‘, ‘server3.py‘, ‘client3-1.py‘, ‘logs‘, ‘scp_dir.py‘]

判断文件是否存在

>> os.path.exists(‘/home/tomcat/python_test/12.txt‘)
>>
False
>> os.path.isfile(‘/home/tomcat/python_test/10.txt‘)
True

查看当前操作系统的平台

>> os.name
‘posix‘

获取文件名称

>> os.path.basename(‘/home/tomcat/python_test/10.txt‘)
‘10.txt‘

将多个路径组合并返回

>> os.path.join(os.getcwd(),‘test1‘)
‘/home/tomcat/python_test/test1‘

原文地址:http://blog.51cto.com/sdsca/2351012

时间: 2024-07-29 08:07:58

python 标准库模块之 os 模块的相关文章

3Python标准库系列之os模块

Python标准库系列之os模块 This module provides a portable way of using operating system dependent functionality. If you just want to read or write a file see open(), if you want to manipulate paths, see the os.path module, and if you want to read all the line

[译] Python 2.7.6 标准库——15.1 os模块

该模块提供了一种使用依赖于操作系统函数的可移植方法.如果想读或写一个文件,参考open():如果想操作路径,参考os.path模块:如果想读取命令行中所有文件的所有行,参考fileinput模块.如果要创建临时文件和目录,参考tempfile模块.高级文件和目录处理则参考shutil模块. 注意函数的可用性: Python所有内置的依赖于操作系统的模块设计原则是:如果有相同的函数功能可用,则使用同一接口.例如,函数os.stat(path)以同一格式返回路径的stat信息(源于POSIX接口).

【python标准库学习】re模块

1.什么是re 正则表达式一门相对通用的语言,在python中也有对正则表达式的支持,那就是的内置re模块.正则表达式就是一系列的规则去匹配字符串然后进行相应的操作,这些规则网上一搜一大片,而re则是运用正则表达式来提供一系列的功能强大的接口让我们来调用.通常我们在对日志文件进行操作的时候会对正则表达式运用的比较多来得到我们希望得到的数据. 2.python中的转义符 正则表达式中通常用反斜杠'\'来代表转义,'\d'代表数字等,但是python本身也是通过反斜杠'\'来表示转义,所以就和正则表

Python -- 标准库 文件管理 (部分os包,shutil包)

在操作系统下,用户可以通过操作系统的命令来管理文件,参考linux文件管理相关命令.Python标准库则允许我们从Python内部管理文件.相同的目的,我们有了两条途径.尽管在Python调用标准库的方式不如操作系统命令直接,但有它自己的优势.你可以利用Python语言,并发挥其他Python工具,形成组合的文件管理功能.Python or Shell? 这是留给用户的选择.本文中会尽量将两者相似的功能相对应. 本文基于linux文件管理背景知识 os包 os包包括各种各样的函数,以实现操作系统

python标准库介绍——31 threading 模块详解

threading 模块 (可选) ``threading`` 模块为线程提供了一个高级接口, 如 [Example 3-1 #eg-3-1] 所示. 它源自 Java 的线程实现. 和低级的 ``thread`` 模块相同, 只有你在编译解释器时打开了线程支持才可以使用它 . 你只需要继承 //Thread// 类, 定义好 ``run`` 方法, 就可以创建一 个新的线程. 使用时首先创建该类的一个或多个实例, 然后调用 ``start`` 方法. 这样每个实例的 ``run`` 方法都会运

python标准库介绍——33 thread 模块详解

?==thread 模块== (可选) ``thread`` 模块提为线程提供了一个低级 (low_level) 的接口, 如 [Example 3-6 #eg-3-6] 所示. 只有你在编译解释器时打开了线程支持才可以使用它. 如果没有特殊需要, 最好使用高级接口 ``threading`` 模块替代. ====Example 3-6. 使用 thread 模块====[eg-3-6] ``` File: thread-example-1.py import thread import tim

Python标准库笔记(6) — struct模块

该模块作用是完成Python数值和C语言结构体的Python字符串形式间的转换.这可以用于处理存储在文件中或从网络连接中存储的二进制数据,以及其他数据源. 用途: 在Python基本数据类型和二进制数据之间进行转换 struct模块提供了用于在字节字符串和Python原生数据类型之间转换函数,比如数字和字符串. 模块函数和Struct类 它除了提供一个Struct类之外,还有许多模块级的函数用于处理结构化的值.这里有个格式符(Format specifiers)的概念,是指从字符串格式转换为已编

Python标准库笔记(1) — string模块

String模块包含大量实用常量和类,以及一些过时的遗留功能,并还可用作字符串操作. 1. 常用方法 常用方法 描述 str.capitalize() 把字符串的首字母大写 str.center(width) 将原字符串用空格填充成一个长度为width的字符串,原字符串内容居中 str.count(s) 返回字符串s在str中出现的次数 str.decode(encoding=’UTF-8’,errors=’strict’) 以指定编码格式解码字符串 str.encode(encoding=’U

python标准库介绍——36 popen2 模块详解

==popen2 模块== ``popen2`` 模块允许你执行外部命令, 并通过流来分别访问它的 ``stdin`` 和 ``stdout`` ( 可能还有 ``stderr`` ). 在 python 1.5.2 以及之前版本, 该模块只存在于 Unix 平台上. 2.0 后, Windows 下也实现了该函数. [Example 3-9 #eg-3-9] 展示了如何使用该模块来给字符串排序. ====Example 3-9. 使用 popen2 模块对字符串排序Module to Sort

Python标准库笔记(5) — sched模块

事件调度 sched模块内容很简单,只定义了一个类.它用来最为一个通用的事件调度模块. class sched.scheduler(timefunc, delayfunc)这个类定义了调度事件的通用接口,它需要外部传入两个参数,timefunc是一个没有参数的返回时间类型数字的函数(常用使用的如time模块里面的time),delayfunc应该是一个需要一个参数来调用.与timefunc的输出兼容.并且作用为延迟多个时间单位的函数(常用的如time模块的sleep). 下面是一个列子: imp