python文件路径函数 python的文件路径( 二 )


16.1路径
路径通常用一个字符串来表示,可以按照路径信息定位到一个目录或文件 。如python文件路径函数:“C:UsersAdministratorPictures1.jpg”这个信息可以非常方便的找到这个图片文件,“C:UsersAdministratorPictures”这个信息可以帮助我们找到更多的图片文件 。
这里所说的“路径”和上网时碰到的“地址”含义比较相似 , 互联网就相当于将个人电脑可以访问的范围扩大了 , 互联网中的地址也是对应某一个存储空间的路径 , 按照地址可以访问互联网上的信息,就如同按照路径可以找到计算机中的文件一样 。
在Python中,可以导入 os模块 来进行目录操作 。
1、获取当前工作目录getcwd()函数
例:
import os
【python文件路径函数 python的文件路径】 print(os.getcwd())
运行结果:
C:UsersAdministratorAppDataLocalProgramsPythonPython38
这个路径是当前Python IDLE所在的地址 。
2、获取文件的绝对路径abspath()函数
abspath()函数是os模块的子模块path提供的一个函数 。用法举例如下:
import os
print(os.path.abspath(r'test.txt'))
运行结果:
C:UsersAdministratorAppDataLocalProgramsPythonPython38 est.txt
16.2 目录操作类函数
1、判断目录是否存在exists()函数
exists()函数是os模块的子模块path中的函数 。使用方法举例如下:
import os
print(os.path.exists(r'C:UsersAdministratorPictures1.jpeg'))
输出结果:
True
2、创建目录mkdir()函数和makedirs()函数
mkdir()函数和makedirs()函数都是由os模块提供的,下面举例说明用法和区别 。
例1:
import os
path='d:test'
if not os.path.exists(path):
os.makedirs(path)
print('该文件目录创建成功!')
如果目录d: est已存在,则不再创建python文件路径函数;若不存在 , 则创建 。
例2:
import os
path='d:testtest1test11'
if not os.path.exists(path):
os.makedirs(path)
print('该文件目录创建成功!')
虽然目录d: est已存在,但可以在其下继续创建子目录 。上面的代码可以成功地创建d: est est1 est11目录 。
mkdir()函数和makedirs()函数用法基本一样,不同之处在于mkdir()函数只能能创建一级目录 。
3、删除目录函数rmdir()函数
rmdir()函数是由os模块提供的 。
例如:通过上面的例子已经建立了d: est est1 est11目录 , 现在去删除子目录test11(此子目录为空目录),代码如下:
import os
os.rmdir('d:testtest1test11')
如果要删除的目录非空(其下还包含有文件或文件夹),则不能删除 , 并且出现Windows文件操作错误的提示(Python是调用操作系统命令完成文件和目录操作的) 。譬如d: est目录下含有有子目录,则不能对其进行如下删除操作 。
import os
os.rmdir('d:test')
此时,会出现如下错误提示:
Traceback (most recent call last):
File "C:/Users/zym/AppData/Local/Programs/Python/Python39/4.py", line 10, in
os.rmdir('d:test')
OSError: [WinError 145] 目录不是空的 。: 'd:test'
4、删除非空目录函数rmtree()函数
rmtree()函数是由Python内置的标准模块shutil提供的 , 可以删除目录及目录下的文件和子目录 。如删除d: est目录及其下的子目录和文件,可用如下代码:
import shutil
shutil.rmtree('d:test')
5、遍历目录walk()函数
walk()函数是由os模块提供的 。
语法格式:
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
其中,top是所要遍历的目录的地址;topdown为可选参数,为 True时自上而下遍历 目录,为False时自下而上遍历目录,默认值为True;onerror为可选参数,用于指定异常处理方式,默认为忽略;followlinks为可选参数,如果为 True,则会遍历目录下的快捷方式(linux 下是软连接 symbolic link )实际所指的目录(默认关闭),如果为 False,则优先遍历 top 的子目录 。

推荐阅读