常用方法 | 作用 |
---|---|
os.path.dirname(file) | 返回当前python执行脚本的执行路径(看下面的例子),这里file为固定参数 |
os.path.abspath(file) | 返回一个文件在当前环境中的绝对路径,这里file 一参数 |
os.path.join(basedir,file) | 把目录和文件名合成一个路径 |
os.path.dirname(path) | 返回文件路径 |
os.path.isdir(path) | 判断路径是否为目录 |
os.mkdir(path) | 其参数path 为要创建目录的路径 |
os.getcwd() | 返回当前进程的工作目录 |
os.chdir(path) | 要切换到的新路径,如果允许访问返回 True , 否则返回False |
一、介绍下os.path方法
常用方法:
常用方法 | 作用 |
---|---|
os.path.dirname(file) | 返回当前python执行脚本的执行路径(看下面的例子),这里file为固定参数 |
os.path.abspath(file) | 返回一个文件在当前环境中的绝对路径,这里file 一参数 |
os.path.join(basedir,file) | 把目录和文件名合成一个路径 |
os.path.dirname(path) | 返回文件路径 |
os.path.isdir(path) | 判断路径是否为目录 |
os.mkdir(path) | 其参数path 为要创建目录的路径 |
os.getcwd() | 返回当前进程的工作目录 |
os.chdir(path) | 要切换到的新路径,如果允许访问返回 True , 否则返回False |
没有介绍的可以参考 python os.path模块
Ensample:
os.path.abspath(file) 脚本绝对路径
import os
base_dir=os.path.abspath(__file__) #脚本绝对路径
print(base_dir)
>>>/Users/shixin/Req/Ex/哈哈哈.py
os.path.dirname(path) 返回文件路径 上一层
import os
base_dir=os.path.abspath(__file__) #脚本绝对路径
print(base_dir)
parent_dir=os.path.dirname(base_dir) #脚本的上层路径
print(parent_dir)
g_dir=os.path.dirname(parent_dir)
print(g_dir)
>>> 结果为每层路径的上一层
/Users/shixin/Req/Ex/哈哈哈.py
/Users/shixin/Req/Ex
/Users/shixin/Req
os.path.join(basedir,file) 把目录和文件名合成一个路径 目录拼接
menu_name='啦啦啦'
menu_dir=os.path.join(parent_dir,menu_name) # 路径,想要创建的名称
print(menu_dir)
>>>
/Users/shixin/Req/Ex
/Users/shixin/Req/Ex/啦啦啦
os.path.isdir(path)
os.mkdir(path)
若果目录存在就pass,不存在就os.mkdir创建
if os.path.isdir(menu_dir):
pass
else:
os.mkdir(menu_dir)
>>> 创建路径为/Users/shixin/Req/Ex/ 啦啦啦 的目录
在指定路径下创建文件 不是目录了
#创建文件
file_name='Test'
file=os.path.join(parent_dir,file_name)
print(file)
#创建好写入就创建出text.txt文件了
with open(file,'w',encoding='utf8') as fp:
fp.write('文件拼接')
切换目录,创建指定路径的文件
os.getcwd() 返回当前进程的工作目录
os.chdir(path) 要切换到的新路径,如果允许访问返回 True , 否则返回False
cwd_dir=os.getcwd()#获取当前目录os.getcwd
print(cwd_dir)
os.chdir(menu_dir) #切换目录
new_file='1.txt'
file2=os.path.join(menu_dir,new_file)
with open(new_file,'w',encoding='utf-8') as fp2:
fp2.write('2222')
贴上源码
import os
base_dir=os.path.abspath(__file__) #脚本绝对路径
#print(base_dir)
parent_dir=os.path.dirname(base_dir) #脚本的上层路径
print(parent_dir)
g_dir=os.path.dirname(parent_dir)
#print(g_dir)
menu_name='啦啦啦'
menu_dir=os.path.join(parent_dir,menu_name) # 路径,想要创建的名称
#print(menu_dir)
# if os.path.isdir(menu_dir):
# pass
# else:
# os.mkdir(menu_dir)
#创建文件
file_name='Test'
file=os.path.join(menu_dir,file_name)
#print(file)
#创建好写入就创建出text.txt文件了
# with open(file,'w',encoding='utf8') as fp:
# fp.write('文件拼接')
cwd_dir=os.getcwd()#获取当前目录os.getcwd
print(cwd_dir)
os.chdir(menu_dir) #切换目录
new_file='1.txt'
file2=os.path.join(menu_dir,new_file)
with open(new_file,'w',encoding='utf-8') as fp2:
fp2.write('2222')