Python基础入门-os模块
今天我们来介绍一下os模块中常用的一些方法,当然python中的os模块中提供的使用方法有很多,但是这里面小编会列举出来一些和实际工作中应用的相关的方法,而且会有一些实际的例子方便大家对os模块理解。比如os结合join、os结合dirname等等,那我们接下来看看关于os模块的使用吧。
我们可以通过 Python入门os基础来看一些os模块的使用(我们使用的是python3的环境)
1.os.getcwd() 返回当前目录
import os
print (os.getcwd())
输出结果:
E:\Project_case
2.os.listdir() 返回当前文件夹下面的文件名,通过列表的形式存储
import os
print (os.listdir('unittest_demo'))
查看结果:
['all_test.py', 'test_case', 'test_report']
3.os.path.dirname(os.path.realpath(__file__)) 获取当前文件所在的绝对路径
curpath = os.path.dirname(os.path.realpath(__file__))
print (curpath)
返回结果:
E:\Project_case
4.os.path.join(a,b) 将b路径追加到a后面
casepath = os.path.join(curpath, "case")
reportpath = os.path.join(curpath, "report")
print (curpath)
print (casepath)
print (reportpath)
查看返回的结果:
E:\Project_case
E:\Project_case\case
可以在获取到的路经上面追加新的路径。这是一种简化的写法。
5.更多用法,参考如下
os模块:
os.sep 可以取代操作系统特定的路径分割符 os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n' 而Mac使用'\r'。 os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix' os.getcwd() 函数得到当前工作目录, os.getenv()和os.putenv() 函数分别用来读取和设置环境变量。 os.listdir(dirname): 列出dirname下的目录和文件 os.remove() 函数用来删除一个文件。 os.curdir: 返回但前目录('.') os.chdir(dirname): 改变工作目录到dirname getatime(path):文件或文件夹的最后访问时间,从新纪元到访问时的秒数 getmtime(path):文件或文件夹的最后修改时间 getctime(path):文件或文件夹的创建时间
os.path模块:
os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录,返回bool值 os.path.exists()函数用来检验给出的路径是否真地存在 返回bool os.path.getsize(name):获得文件大小,如果name是目录返回0L 返回long 单位是字节 os.path.abspath(name):获得绝对路径 os.path.normpath(path):规范path字符串形式, 结果一般情况下把/变为//, os.path.split(name):将name分割成路径名和文件名,结果为(路径名,文件名.文件扩展名)(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在) os.path.splitext(filename):分离文件名与扩展名 结果为(filename,扩展名) 如果参数为一个路径 则返回(路径,'') os.path.join(path,name): 连接目录与文件名或目录 结果为path/name os.path.basename(path):返回文件名 实际为把path的最后一个"/"分割,返回后者。不管参数是一个路径还是文件 与os.path.split(name)相同 不同之处后者返回两个值得元组 os.path.dirname(path): 返回文件路径 实际为把path的最后一个"/"分割,返回前者。不管参数是一个路径还是文件 os.system()函数用来运行shell命令
os模块包装了不同操作系统的通用接口,使用户在不同操作系统下,可以使用相同的函数接口,返回相同结构的结果。
os.name:返回当前操作系统名称('posix', 'nt', 'os2', 'mac', 'ce' or 'riscos') os中定义了一组文件、路径在不同操作系统中的表现形式参数,如 os.sep(文件夹分隔符,windows中是 \ ) os.extsep(扩展名分隔符,windows中是 . ) os.pathsep(目录分隔符,windows中是 ; ) os.linesep(换行分隔符,windows中是 \r\n ) os中有大量文件、路径操作的相关函数,如: listdir(path):列举目录下的所有文件 makedir(path):创建文件夹,注:创建已存在的文件夹将异常 makedirs(path):递归式的创建文件夹,注:创建已存在的文件夹将异常 remove(filename):删除一个文件 rmdir(path):删除一个文件夹,注:删除非空的文件夹将异常 removedirs(path):递归的删除文件夹,直到有一级的文件夹非空,注:文件夹路径不能以'\'结束 rename(src,dst):给文件或文件夹改名(可以改路径,但是不能覆盖目标文件) renames(src,dst):递归式的给文件或文件名改名 walk(path):列举path下的所有文件、文件夹
os中与进程相关的操作,如:
execl(path):运行一个程序来替代当前进程,会阻塞式运行 _exit(n):退出程序 startfile(filename):用与文件关联的程序运行,关联程序打开后,立即返回 system(cmd):运行一个程序或命令,会立即返回,并在cmd执行完成后,会返回cmd退出代码 os.path:在不同的操作系统中调用不同的模块,是一个可import的模块,这个模块中提供很多有用的操作: abspath(path):返回path的绝对路径,若path已经是绝对路径了,则保持。 basename(path):返回path中的文件名。 commonprefix(list):返回list中的统一前缀,用于获得一组字符串的左起相同的内容 dirname(path):返回path中的文件夹部分,结果不包含'\' exists(path):文件或文件夹是否存在 getatime(path):文件或文件夹的最后访问时间,从新纪元到访问时的秒数 getmtime(path):文件或文件夹的最后修改时间 getctime(path):文件或文件夹的创建时间 getsize(path):文件或文件夹的大小,若是文件夹返回0 isabs(path):返回是否是绝对路径 isfile(path):返回是否是文件路径 isdir(path):返回是否是文件夹路径 islink(path):返回是否是快捷方式 join(path1,path2,...):将path进行组合,若其中有绝对路径,则之前的path将被删除 normcase(path):转换路径中的间隔符 normpath(path):转换路径为系统可识别的路径 realpath(path):转换路径为绝对路径 split(path):将路径分解为(文件夹,文件名) splitext(path):将路径分解为(其余部分,.扩展名),若文件名中没有扩展名,扩展名部分为空字符串 在操作与系统不支持的对象时,抛出OSError异常。
>>> import os
>>> os.path.exists('d:/assist')
True
>>> os.path.exists('d:/assist/getTeacherList.py')
True
>>> os.path.isfile('d:/assist')
False
>>> os.path.isfile('d:/assist/getTeacherList.py')
True
>>> os.makedirs('d:/assist/set')
>>> os.path.exists('d:/assist/set')
True
使用os.listdir命令
>>>workpath='目录'
>>>if not os.list(workpath):
>>>print '目录为空'
>>> def Test2(rootDir):
... for lists in os.listdir(rootDir):
... path = os.path.join(rootDir, lists)
... print path
... if os.path.isdir(path):
... Test2(path)
...
>>> Test2("F:\zr")
Python基础入门-os模块的更多相关文章
- python基础之os模块操作
# os模块 目录相关内置库import os# . 当前目录 .. 返回上一级目录# 1. os.path.abspath() --获取当前文件的绝对路径(不包含os模块.py) pwd# path ...
- Python基础(os模块)
os模块用于操作系统级别的操作: os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当 ...
- Python基础入门(模块和包)
1 模块 1.1 什么是模块 在 Python 中,一个 .py 文件就称之为一个模块(Module). 我们学习过函数,知道函数是实现一项或多项功能的一段程序 .其实模块就是函数功能的扩展.为什么这 ...
- [Python基础]009.os模块(1)
os模块(1) 介绍 os 常量 文件目录操作 文件属性操作 遍历文件夹 介绍 os模块是系统服务应用程序接口,是Python最常用的模块之一. os模块包含了对文件和文件夹的操作,操作系统相关的操作 ...
- python 基础(八) os模块
OS模块 概念:包含了普遍的操作 系统的功能 一.函数 函数名 函数说明 os.name 获取操作系统类型 nt->Windows posix->Linux/Unix os.listdir ...
- [Python基础]010.os模块(2)
os模块(2) 介绍 os 常量 路径 判断路径属性 路径变换 文件属性 相同文件 介绍 - os.path模块,主要处理路径操作,包含了各种处理文件和文件名的方法. os.path 常量 os.pa ...
- Python内置OS模块用法详解
大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示.刚入门的读者千万不要错过! 很多人学习python,不知 ...
- Python基础入门教程
Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...
- 十八. Python基础(18)常用模块
十八. Python基础(18)常用模块 1 ● 常用模块及其用途 collections模块: 一些扩展的数据类型→Counter, deque, defaultdict, namedtuple, ...
随机推荐
- gradle 命令行
1. 帮助 ./gradlew -h 2. gradle 可执行tasks gradle tasks or ./gradlew tasks 3. gradle help 任务 帮助了解每个task 的 ...
- cookie跨站脚本漏洞解决方案
近日项目碰到一个跨脚本注入的问题: 这安全测评工具也是厉害了,直接将脚本注入到cookie里头,以前没有碰到这样的情况. 之前写过一篇文章过滤跨脚本注入的问题.<浅谈XSS攻击原理与解决方法&g ...
- 客户端如何调用WebService并且POST数据
直接上代码 using System; using System.Collections.Generic; using System.Linq; using System.Text;using Sys ...
- bzoj 2259 [Oibh]新型计算机 ——最短路(建图)
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2259 不是 n^2 条边!连那条边权为0的边之后,只要每个位置向它的前一个位置和后一个位置连 ...
- Terracotta设计原理分析--(部分内容来自官方描述)
因为工作中历史产品采用了terracotta作为分布式缓存线性扩展平台,因此不得不提前对其原理做了相关了解,当然其中很多的设计思想和oracle.memcached的设计相似,但也有自己的亮点,那就是 ...
- CRC码计算
循环冗余校验检错方案 上节介绍的奇偶校验码(PCC)只能校验一位错误,本节所要介绍的循环冗余校验码(CRC)的检错能力更强,可以检出多位错误. 1. CRC校验原理 CRC校验原理看起来比较复杂,好难 ...
- ffmpeg综合应用示例(一)——摄像头直播
本文的示例将实现:读取PC摄像头视频数据并以RTMP协议发送为直播流.示例包含了 1.ffmpeg的libavdevice的使用 2.视频解码.编码.推流的基本流程 具有较强的综合性. 要使用liba ...
- java.控制次数,每一组数都要计算。所以有个嵌套
总结:数组内的数据要循环,外面的次数也要循环 package com.aini; import java.util.Scanner; //要求可以控制输入的次数,比如4次.则输入5个数,5组输出结果 ...
- zk 06之:ZooKeeper命令、命令行工具及简单操作
常用命令ZooKeeper 支持某些特定的四字命令字母与其的交互.它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息.用户在客户端可以通过 telnet 或 nc 向 ZooK ...
- 1127 ZigZagging on a Tree
题意:中序序列+后序序列构建二叉树,之字形输出其层序序列. 思路:在结点的数据域中额外增加一个layer表示结点所在的层次,并定义vector<int> zigzag[maxn]存放最终结 ...