网淘巴来吧,欢迎您!

返回首页 微信
微信
手机版
手机版

python os操作

2021-04-23 新闻来源:网淘巴 围观:543
''

这张主要介绍os模块的几个函数

1.os.pa[文]th.exis[章]ts() 和 os.list[来]dir()

首先我们要判断该路径是不是存在,如果存在再列出该路径下的所有文件

import ospath=r'D:\学习资料\kira'if os.path.exists(path):    files=os.listdir(path)    print(files)         else:    print('this path not exist')

结果:

['1', '2.txt', '3.py']

上面结果只是列出了一级目录下的所有文件,可能会遇到文件夹套文件夹再套文件夹的情况,所以我们这边需要写一个方法,遍历该目录下的所有文件夹.直到把所有文件都找出来.这边需要用到os.path.isfile()或者os.path.isdir(),如果判断出来是文件夹,我们还需要用到os.path.join(),继续深入处理

#coding=utf-8import osdef list_allfile(path,all_files=[]):        if os.path.exists(path):        files=os.listdir(path)    else:        print('this path not exist')    for file in files:        if os.path.isdir(os.path.join(path,file)):            list_allfile(os.path.join(path,file),all_files)        else:            all_files.append(os.path.join(path,file))    return all_filesif __name__ == "__main__":    print(list_allfile(r'D:\学习资料\kira'))

结果:

['D:\\学习资料\\kira\\1\\4.txt', 'D:\\学习资料\\kira\\2.txt', 'D:\\学习资料\\kira\\3.py']

2.os模块的主要几个常用函数

os.path.join()

#coding=utf-8import ospath=r'D:\学习资料\python'path_new=os.path.join(path,'Python编程:从入门到实践.pdf')print(path_new)

结果:

D:\学习资料\python\Python编程:从入门到实践.pdf

os.getcwd()

#coding=utf-8import ospath_now=os.getcwd()print(path_now)

结果:

C:\Users\kirazheng>py -3 C:\Users\kirazheng\Desktop\test2.pyC:\Users\kirazheng应该是当前执行的目录

os.chdir()

#coding=utf-8import osos.chdir(r'D:\学习资料\python')path_after=os.getcwd()print(path_after)

结果:

C:\Users\kirazheng>py -3 C:\Users\kirazheng\Desktop\test2.pyD:\学习资料\python切换后的目录

os.makedirs()

try:    os.makedirs(r'D:\学习资料\python\kira')except FileExistsError:    print('have this dir')

结果:

新建文件夹,中间的文件夹没有的话,也建,try except 以后介绍

os.path.abspath()

#coding=utf-8import ospath_abs=os.path.abspath(r'.')print(path_abs)

结果:

C:\Users\kirazheng>py -3 C:\Users\kirazheng\Desktop\test2.pyC:\Users\kirazheng相对路径变绝对路径

os.path.isabs()

print(os.path.isabs(r'.'))print(os.path.isabs(r'D:\学习资料'))

结果:

FalseTrue判断是否是绝对路径

os.path.relpath()

print(os.path.relpath(r'D:\学习资料', r'D:\学习资料\python\kira'))print(os.path.relpath(r'D:\学习资料\python\kira', r'D:\学习资料'))

结果:

..\..python\kira后面路径是start path,感觉就是看后面路径怎么到前面路径的

os.path.dirname() && os.path.basename() &&os.path.split()

#coding=utf-8import ospath_new='D:\学习资料\python\Python编程:从入门到实践.pdf'print(os.path.dirname(path_new))print(os.path.basename(path_new))print(os.path.split(path_new))

结果:

D:\学习资料\pythonPython编程:从入门到实践.pdf('D:\\学习资料\\python', 'Python编程:从入门到实践.pdf')

os.listdir()

#coding=utf-8import osprint(os.listdir(r'D:\学习资料\kira'))

结果:

['1', '2.txt', '3.py']列出该目录下的所有文件

os.path.exists() &&os.path.isfile() &&os.path.isdir()

#coding=utf-8import osprint(os.path.exists(r'D:\学习资料\kira'))print(os.path.isfile(r'D:\学习资料\python'))print(os.path.isdir(r'D:\学习资料\python'))

结果:

TrueFalseTrue很明显字面意思,路径存不存在,是不是文件,是不是文件夹
免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏

本文链接:https://www.wtao8.com/post/25.html 转载需授权!

分享到:

相关文章

龙年
大发