Python中的绝对路劲和相对路径

时间:2023-01-07 04:54:08

1、绝对路径

os.path.abspath("文件名"):

显示的是一个文件的绝对路劲

eg:

>>> import os
>>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb")
>>> os.listdir()
['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__']
>>> os.path.abspath("settings.py")
'E:\\PycharmProjects\\odycmdb\\odycmdb\\settings.py'

2、相对路径

os.path.dirname("文件名"):

显示的是一个文件的相对路径

eg:

>>> import os
>>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb")
>>> os.listdir()
['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__']
>>> os.path.dirname("settings.py")
''

 3、总结

一般情况下,绝对路劲函数和相对路径函数是结合起来用的,特别是在多个文件包之前相互导入

①os.path.dirname(os.path.abspath("文件名")): 表示获取当前文件夹的所在的目录

eg:

>>> import os
>>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb")
>>> os.listdir()
['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__']
>>> os.path.abspath("settings.py")
'E:\\PycharmProjects\\odycmdb\\odycmdb\\settings.py'
>>> os.path.dirname(os.path.abspath("settings.py"))
'E:\\PycharmProjects\\odycmdb\\odycmdb'

②os.path.dirname(os.path.dirname(os.path.abspath("文件名"))): 表示获取当前文件夹上一层目录

eg:

>>> import os
>>> os.chdir("E:\\PycharmProjects\\odycmdb\\odycmdb")
>>> os.listdir()
['settings.py', 'urls.py', 'wsgi.py', '__init__.py', '__pycache__']
>>> os.path.abspath("settings.py")
'E:\\PycharmProjects\\odycmdb\\odycmdb\\settings.py'
>>> os.path.dirname(os.path.dirname(os.path.abspath("settings.py")))
'E:\\PycharmProjects\\odycmdb'