第三十六节,os系统级别操作模块

时间:2021-09-16 20:04:15

在使用os模块时需要先 import os 引入模块

os.getcwd()模块函数

功能:获取当前工作目录,即当前python脚本工作的目录路径【无参】

使用方法:os.getcwd()

格式如:a = os.getcwd()

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.getcwd() #获取当前工作目录,即当前python脚本工作的目录路径【无参】
print(a)
#输出
#H:\py

os.chdir()模块函数

功能:改变当前脚本工作目录;相当于shell下cd【有参】

使用方法:os.chdir("字符串格式要更改的路径")

格式如:os.chdir("D:")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
retval = os.getcwd() # 查看当前工作目录
print("当前工作目录为 %s" % retval)
os.chdir("D:") # 修改当前工作目录
retval = os.getcwd() # 查看修改后的工作目录
print("目录修改成功 %s" % retval)
#输出
# 当前工作目录为 H:\py
# 目录修改成功 D:\

os.curdir模块函数

功能:返回当前目录: ('.')【无参】

使用方法:os.curdir

格式如:a = os.curdir

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.curdir #返回当前目录: ('.')
print(a)
#输出
# .

os.pardir模块函数

功能:获取当前目录的父目录字符串名:('..')【无参】

使用方法:os.pardir

格式如:a = os.pardir

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.pardir #获取当前目录的父目录字符串名:('..')
print(a)
#输出
# ..

os.makedirs()模块函数

功能:可创建多层递归目录【有参】

使用方法:os.makedirs("要创建的目录名称或路径")

格式如:os.makedirs("div1/div2/div3")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.makedirs("div1/div2/div3") #可创建多层递归目录

os.removedirs()模块函数

功能:若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推【有参】

使用方法:os.removedirs("要删除的目录名称或路径")

格式如:os.removedirs("div1/div2/div3")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.removedirs("div1/div2/div3") #若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推【有参】

os.mkdir()模块函数

功能:创建单级目录;相当于shell中mkdir 【有参】

使用方法:os.mkdir("要创建的目录名称")

格式如:os.mkdir("dsr")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.mkdir("dsr") #生成单级目录;相当于shell中mkdir 【有参】

os.rmdir()模块函数

功能:删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir【有参】 

使用方法:os.rmdir("要删除的目录名称")

格式如:os.rmdir("dsr")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.rmdir("dsr") #删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir【有参】

os.listdir()模块函数

功能: 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印【有参】

使用方法:os.listdir("目录名称")

格式如:a = os.listdir("lib")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.listdir("lib") #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印【有参】
print(a)
#输出文件名称和目录名称
# ['mk.py', '__pycache__']

os.remove()模块函数

功能: 删除一个文件,对目录不起作用【有参】

使用方法:os.remove("要删除的目录名称")

格式如:os.remove("2.txt")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.remove("2.txt") #删除一个文件

os.rename()模块函数

功能: 重命名文件或目录【有参】

使用方法:os.rename("文件或者目录名称","要修改成的文件或目录名称")

格式如:os.rename("1.txt", "2.txt")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.rename("1.txt", "2.txt") #重命名文件或目录

os.stat()模块函数【常用】

功能:获取文件或者目录信息【有参】

使用方法:os.stat("要获取信息的文件或目录名称")

格式如:a = os.stat("22")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.stat("") #获取文件或者目录信息
print(a)

os.sep模块函数

功能:操作系统特定的路径分隔符,win下为"\",Linux下为"/"【无参】

使用方法:os.sep

格式如:a = os.sep

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.sep #操作系统特定的路径分隔符,win下为"\",Linux下为"/"
print(a)

os.linesep模块函数

功能:当前平台使用的换行符,win下为"\t\n",Linux下为"\n"【无参】

使用方法:os.linesep

格式如:a = os.linesep

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.linesep #当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
b = "你好%s在吗" %(a) #相当于加了\n换行符
print(b)
#输出
# 你好
# 在吗

os.pathsep模块函数

功能:用于分割文件路径的字符串【无参】

使用方法:os.pathsep

格式如:a = os.pathsep

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.pathsep #用于分割文件路径的字符串
print(a)
#输出
# ;

os.name模块函数

功能:字符串指示当前使用平台。win->'nt'; Linux->'posix'【无参】

使用方法:os.name

格式如:a = os.name

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.name #字符串指示当前使用平台。win->'nt'; Linux->'posix'
print(a)
#输出
# nt

os.system()模块函数

功能:运行shell命令,直接显示【有参】

使用方法:os.system("shell系统命令")

格式如:os.system("bash command")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
os.system("bash command") #运行shell命令,直接显示

os.environ模块函数

功能:获取系统环境变量【无参】

使用方法:os.environ

格式如:a = os.environ

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.environ #获取系统环境变量
for i in a: #循环出系统环境变量
print(i)
#输出
# USERPROFILE
# COMSPEC
# PYTHONPATH
# PROCESSOR_LEVEL
# OS
# USERNAME
# ALLUSERSPROFILE
# PROGRAMFILES(X86)
# PROGRAMFILES
# NUMBER_OF_PROCESSORS
# PROGRAMDATA
# LOCALAPPDATA
# PUBLIC
# PSMODULEPATH
# COMMONPROGRAMFILES(X86)
# HOMEDRIVE
# SESSIONNAME
# LOGONSERVER
# PATHEXT
# COMMONPROGRAMFILES
# SYSTEMDRIVE
# WINDIR
# COMPUTERNAME
# USERDOMAIN_ROAMINGPROFILE
# PATH
# PYTHONIOENCODING
# SYSTEMROOT
# COMMONPROGRAMW6432
# PROCESSOR_ARCHITECTURE
# USERDOMAIN
# PYCHARM_HOSTED
# APPDATA
# TEMP
# PROGRAMW6432
# PROCESSOR_IDENTIFIER
# HOMEPATH
# PROCESSOR_REVISION
# PYTHONUNBUFFERED
# TMP

os.path.abspath()模块函数

功能:返回一个文件或者目录的规范化的绝对路径【有参】

使用方法:os.path.abspath("要返回规范绝对路径的文件或者目录名称")

格式如:a = os.path.abspath("mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.abspath("mk.py") #返回一个文件或者目录的规范化的绝对路径
print(a)
#输出
# H:\py\mk.py

os.path.split()模块函数

功能:将文件分割成目录和文件名二元组返回【有参】

使用方法:os.path.split("路径或名称")

格式如:a = os.path.split("mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.split("mk.py") #将path分割成目录和文件名二元组返回
print(a)
#输出
# ('', 'mk.py')

os.path.dirname()模块函数【常用】

功能:返回文件的目录【有参】

使用方法:os.path.dirname("文件路径")

格式如:a = os.path.dirname("py/lib/mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.dirname("py/lib/mk.py") #返回文件的目录
print(a)
#输出
# py/lib

os.path.basename()模块函数

功能:返回文件最后的文件名。如何文件以/或\结尾【有参】

使用方法:os.path.basename("文件路径")

格式如:a = os.path.basename("py/lib/mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.basename("py/lib/mk.py") #返回文件最后的文件名。如何文件以/或\结尾
print(a)
#输出
# mk.py

os.path.exists()模块函数【常用】

功能:如果文件存在,返回True;如果文件不存在,返回False【有参】

使用方法:os.path.exists("文件路径")

格式如:a = os.path.exists("H:/py/lib/mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.exists("H:/py/lib/mk.py") #如果文件存在,返回True;如果文件不存在,返回False
print(a)
#输出
# True

os.path.isabs()模块函数【常用】

功能:如果文件是绝对路径,返回True【有参】

使用方法:os.path.isabs("文件路径")

格式如:a = os.path.isabs("H:/py/lib/mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.isabs("H:/py/lib/mk.py") #如果文件是绝对路径,返回True
print(a)
#输出
# True

os.path.isfile()模块函数【常用】

功能:如果文件是一个存在的文件,返回True。否则返回False【有参】

使用方法:os.path.isfile("文件路径")

格式如:a = os.path.isfile("H:/py/lib/mk.py")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.isfile("H:/py/lib/mk.py") #如果文件是一个存在的文件,返回True。否则返回False
print(a)
#输出
# True

os.path.isdir()模块函数【常用】

功能:如果目录是一个存在的目录,则返回True。否则返回False【有参】

使用方法:os.path.isdir("目录路径")

格式如:a = os.path.isdir("H:/py/lib")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
a = os.path.isdir("H:/py/lib") #如果目录是一个存在的目录,则返回True。否则返回False
print(a)
#输出
# True

os.path.join()模块函数【常用】

功能:将多个字符串路径组合成一个完整的路径返回,第一个绝对路径之前的参数将被忽略【有参】

使用方法:os.path.join("文件路径")

格式如:a = os.path.join(s1,s2,s3,s4)

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
s1 = "H:"
s2 = "py"
s3 = "lib"
s4 = "mk.py"
a = os.path.join(s1,s2,s3,s4) #将多个字符串路径组合成一个完整的路径返回,第一个绝对路径之前的参数将被忽略【有参】
print(a)
#输出
#H:py\lib\mk.py

os.path.getatime()模块函数

功能:返回所指向的文件或者目录的最后存取时间戳【有参】

使用方法:os.path.getatime("文件路径")

格式如:a = os.path.getatime("H:/py/lib")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
import time
a = os.path.getatime("H:/py/lib") #返回所指向的文件或者目录的最后存取时间戳
b = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime(a)) #将时间戳转换成时间格式
print(b)
#输出
# 2016-08-22 20:41:28

os.path.getmtime()模块函数

功能:返回所指向的文件或者目录的最后存取时间戳【有参】

使用方法:os.path.getmtime("文件路径")

格式如:a = os.path.getmtime("H:/py/lib")

#!/usr/bin/env python
# -*- coding:utf8 -*-
import os
import time
a = os.path.getmtime("H:/py/lib") #返回所指向的文件或者目录的最后修改时间戳
b = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime(a)) #将时间戳转换成时间格式
print(b)
#输出
# 2016-08-22 20:41:28

os.stat().st_size检查一个文件的大小,返回字节

使用方法:os.stat(要检查大小的文件路径或文件名称).st_size

格式:os.stat("32.png").st_size

dx = os.stat("32.png").st_size #检测要发送文件的大小

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

os.chdir("dirname")         改变当前脚本工作目录;相当于shell下cd
os.curdir                   返回当前目录: ('.')
os.pardir                   获取当前目录的父目录字符串名:('..')
os.makedirs('dir1/dir2')    可生成多层递归目录
os.removedirs('dirname1')   若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname')         生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname')         删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname')       列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove()                 删除一个文件
os.rename("oldname","new")  重命名文件/目录
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;如果path不存在,返回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所指向的文件或者目录的最后修改时间