os模块作用
os模块是以操作系统相关的
Python中整理文件和目录最为常用的模块,该模块提供了非常丰富的方法用来处理文件和目录。
os模块属性
import os
print(os.curdir) # 返回当前目录 .
print(os.pardir) # 获取当前父目录字符串名 ..
print(os.sep) # 输出操作系统的路径分隔符 \
print(os.linesep) # 输出当前平台使用的行终止符,win--> '\\' , linux--> '/'
print(os.pathsep) # 输出用于分割文件路径的字符串 ;
print(os.name) # 输出字符串指示当前使用平台,win--> 'nt',linux--> 'posix'
print(os.environ) #获取系统环境变量
os模块方法
os.getcwd【获取当前的工作路径】Linux中的pwd
import os
print('当前路径是:',os.getcwd())
当前路径是: F:\pytho_n\python_01\module_test1
os.chdir(路径) 【修改当前工作目录】
import os
print ("当前工作目录",os.getcwd()) # 查看当前工作目录
os.chdir(r"F:\python") # 修改 F:\python 为当前工作目录
print('修改后的目录',os.getcwd()) # 查看修改后的工作目录
当前工作目录 F:\pytho_n\再来一次
修改后的目录 F:\python
os.listdir(路径) 【列表的方式返回路径下的所有目录与文件】
import os
path_01 = r"F:\pytho_n\python_01"
print('python_01下的文件与目录:',os.listdir(path_01))
os.walk(路径)
传入任意一个路径,深层次遍历指定路径下的所有子文件夹,
返回的是一个由路径、文件夹列表、文件列表组成的元组
使用元组拆包:就是将一个元组中的每个值,赋值给不同的变量
import os
path_01 = r"F:\pytho_n\python_01"
for p,d,f in os.walk(path_01):
print(p)
print(d)
print(f)
print("\n")
os.mkdir(路径) 【按照指定路径创建文件夹,如果文件夹存在会报错】
import os
path_02 = r"F:\pytho_n\python_01\send" #send 为新创建的文件夹
try:
print(os.mkdir(path_02))
except FileExistsError as e:
print('文件夹已存在',e)
os.rmdir(路径) 【删除指定路径下的文件夹,只能删除空文件夹,删除非空文件夹会报错】
import os
path_02 = r"F:\pytho_n\python_01\send" #send 删除的文件夹
try:
print(os.rmdir(path_02))
except OSError as e:
print('目录不为空',e)
os.path.join(路径,路径) 【传入两个路径,将该路径拼接起来,形成一个新的完整路径】
import os
path_03 = os.getcwd()
list_01 = ["a.jpg","b.jpg","c.jpg"]
for i in list_01:
x = os.path.join(path_03,i)
print(x)
F:\pytho_n\python_01\module_test1\a.jpg
F:\pytho_n\python_01\module_test1\b.jpg
F:\pytho_n\python_01\module_test1\c.jpg
os.path.split(路径) 【返回元组,将其拆分为绝对路径和文件名2部分】
import os
path_02 = r"F:\pytho_n\python_01\send"
print(os.path.split(path_02))
('F:\\pytho_n\\python_01', 'send')
os.path.dirname(路径) 【只获取其绝对路径】
import os
path_02 = r"F:\pytho_n\python_01\send"
print(os.path.dirname(path_02))
F:\pytho_n\python_01
os.path.basename(路径) 【只获取路径下的文件名】
import os
path_02 = r"F:\pytho_n\python_01\send"
print(os.path.basename(path_02))
send
os.path.getsize(路径) 【传入一个完整的文件路径,返回该文件的大小】
import os
print("该文件的大小:",os.path.getsize('F:\CentOS-7-x86_64-DVD-1908.iso'))
该文件的大小: 4664066048
os.path.isdir(路径) 【传入一个完整的文件路径,判断它是否是文件夹】
import os
path = os.getcwd()
file_list = os.listdir(path)
print(file_list)
for i in file_list:
if os.path.isdir(i):
print('这个是文件夹',i)
['asdf', 'main.py', 'send']
这个是文件夹 asdf
这个是文件夹 send
os.path.isfile(路径)【传入一个完整的文件路径,判断它是否是文件】
import os
path = os.getcwd()
file_list = os.listdir(path)
print(file_list)
for file in file_list:
if os.path.isfile(file):
print("传入一个完整的文件路径,判断它是否是文件",file)
['asdf', 'main.py', 'send']
传入一个完整的文件路径,判断它是否是文件 main.py
os.path.sep 【返回当前操作系统的路径分隔符】
import os
print('当前路径分隔符是:',os.path.sep)
当前路径分隔符是: \
os.path.exists(路径)传入一个路径,判断指定路径下的目录是否存在。存在返回True,否则返回False
import os
path_01 = r"F:\pytho_n\python_01"
if os.path.exists(path_01):
print('指定文件夹存在')
else:
print('指定文件夹不存在')