Python开发【内置模块篇】os模块

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

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

>>> import os
>>> os.getcwd()
'E:\test'
>>>

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

1 >>> os.listdir(os.getcwd())
2 ['1.txt', '2.txt']
3 >>>

2.绝对路径

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

>>> os.path.abspath(os.getcwd())
'E:\test'
>>> os.path.abspath('.')
'E:\test'
>>>

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

os.path.split(path)  分成(文件夹,文件名),如果path是文件夹路径以    结尾,那么文件名为空

>>> os.path.split('E:\text\')
('E:\text', '')
>>>

os.path.join(path1,path2) 合并路径, 若其中有绝对路径,则之前的path将被删除

>>> os.path.join('e:\test\a.txt','e:\test\b.txt')
'e:\test\b.txt'
>>>
>>> os.path.join('e:\test','e:\test\b.txt')
'e:\test\b.txt'
>>>

os.path.dirname(path)  返回path中的文件夹部分

>>> os.path.dirname('e:\test\b.txt')
'e:\test'
>>>

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

>>> os.path.basename('e:\test\b.txt')
'b.txt'
>>>

4.查看文件时间

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

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

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

5.查看文件大小

os.path.getsize(path):文件或文件夹的大小,若是文件夹返回0。

>>> os.path.getsize('e:\test')
0
>>> os.path.getsize('e:\test\1.txt')
11
>>>

6.查看文件是否存在

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

>>> os.path.exists('e:\test\1.txt')
True
>>> os.path.exists('e:\test\3.txt')
False

7.判断是否是绝对路径

os.path.isabs()

>>> os.path.isabs('.')
False
>>> os.path.isabs('e:/test/1.txt')
True
>>>

其他方法

os.path.isdir()
os.path.isfile()
os.path.islink()

 os.walk(path)   遍历该目录下的所有文件以及子目录, 返回一个元组包含三个元素(当前目录,子级目录,当前目录下的所有文件)

>>> os.listdir(os.getcwd())
['1.txt', '2.txt', '3.txt', '4.txt', 'fold_eng']
>>> for i in os.walk(os.getcwd()):
...     print(i)
...
('E:\test', ['fold_eng'], ['1.txt', '2.txt', '3.txt', '4.txt'])
('E:\test\fold_eng', [], ['a.txt', 'b.txt', 'c.txt', 'd.txt'])
>>>
复制代码
#OS模块
#os模块就是对操作系统进行操作,使用该模块必须先导入模块: import os #getcwd() 获取当前工作目录(当前工作目录默认都是当前文件所在的文件夹) result = os.getcwd() print(result) #chdir()改变当前工作目录 os.chdir('/home/sy') result = os.getcwd() print(result) open('02.txt','w') #操作时如果书写完整的路径则不需要考虑默认工作目录的问题,按照实际书写路径操作 open('/home/sy/下载/02.txt','w') #listdir() 获取指定文件夹中所有内容的名称列表 result = os.listdir('/home/sy') print(result) #mkdir() 创建文件夹 #os.mkdir('girls') #os.mkdir('boys',0o777) #makedirs() 递归创建文件夹 #os.makedirs('/home/sy/a/b/c/d') #rmdir() 删除空目录 #os.rmdir('girls') #removedirs 递归删除文件夹 必须都是空目录 #os.removedirs('/home/sy/a/b/c/d') #rename() 文件或文件夹重命名 #os.rename('/home/sy/a','/home/sy/alibaba' #os.rename('02.txt','002.txt') #stat() 获取文件或者文件夹的信息 #result = os.stat('/home/sy/PycharmProject/Python3/10.27/01.py) #print(result) #system() 执行系统命令(危险函数) #result = os.system('ls -al') #获取隐藏文件 #print(result) #环境变量 ''' 环境变量就是一些命令的集合 操作系统的环境变量就是操作系统在执行系统命令时搜索命令的目录的集合 ''' #getenv() 获取系统的环境变量 result = os.getenv('PATH') print(result.split(':')) #putenv() 将一个目录添加到环境变量中(临时增加仅对当前脚本有效) #os.putenv('PATH','/home/sy/下载') #os.system('syls') #exit() 退出终端的命令 #os模块中的常用值 #curdir 表示当前文件夹 .表示当前文件夹 一般情况下可以省略 print(os.curdir) #pardir 表示上一层文件夹 ..表示上一层文件夹 不可省略! print(os.pardir) #os.mkdir('../../../man')#相对路径 从当前目录开始查找 #os.mkdir('/home/sy/man1')#绝对路径 从根目录开始查找 #name 获取代表操作系统的名称字符串 print(os.name) #posix -> linux或者unix系统 nt -> window系统 #sep 获取系统路径间隔符号 window -> linux ->/ print(os.sep) #extsep 获取文件名称和后缀之间的间隔符号 window & linux -> . print(os.extsep) #linesep 获取操作系统的换行符号 window -> linux/unix -> print(repr(os.linesep)) #导入os模块 import os #以下内容都是os.path子模块中的内容 #abspath() 将相对路径转化为绝对路径 path = './boys'#相对 result = os.path.abspath(path) print(result) #dirname() 获取完整路径当中的目录部分 & basename()获取完整路径当中的主体部分 path = '/home/sy/boys' result = os.path.dirname(path) print(result) result = os.path.basename(path) print(result) #split() 将一个完整的路径切割成目录部分和主体部分 path = '/home/sy/boys' result = os.path.split(path) print(result) #join() 将2个路径合并成一个 var1 = '/home/sy' var2 = '000.py' result = os.path.join(var1,var2) print(result) #splitext() 将一个路径切割成文件后缀和其他两个部分,主要用于获取文件的后缀 path = '/home/sy/000.py' result = os.path.splitext(path) print(result) #getsize() 获取文件的大小 #path = '/home/sy/000.py' #result = os.path.getsize(path) #print(result) #isfile() 检测是否是文件 path = '/home/sy/000.py' result = os.path.isfile(path) print(result) #isdir() 检测是否是文件夹 result = os.path.isdir(path) print(result) #islink() 检测是否是链接 path = '/initrd.img.old' result = os.path.islink(path) print(result) #getctime() 获取文件的创建时间 get create time #getmtime() 获取文件的修改时间 get modify time #getatime() 获取文件的访问时间 get active time import time filepath = '/home/sy/下载/chls' result = os.path.getctime(filepath) print(time.ctime(result)) result = os.path.getmtime(filepath) print(time.ctime(result)) result = os.path.getatime(filepath) print(time.ctime(result)) #exists() 检测某个路径是否真实存在 filepath = '/home/sy/下载/chls' result = os.path.exists(filepath) print(result) #isabs() 检测一个路径是否是绝对路径 path = '/boys' result = os.path.isabs(path) print(result) #samefile() 检测2个路径是否是同一个文件 path1 = '/home/sy/下载/001' path2 = '../../../下载/001' result = os.path.samefile(path1,path2) print(result) #os.environ 用于获取和设置系统环境变量的内置值 import os #获取系统环境变量 getenv() 效果 print(os.environ['PATH']) #设置系统环境变量 putenv() os.environ['PATH'] += ':/home/sy/下载' os.system('chls')
复制代码
原文地址:https://www.cnblogs.com/tangkaishou/p/10200839.html