1、from os.path import abspath, dirname
-
print(abspath(__file__))
__file__
是一个特殊的变量,它表示当前脚本的文件名(带有路径)。abspath()
是一个函数,它返回指定文件或目录的绝对路径。- 因此,这行代码将打印出当前脚本的绝对路径。
-
print(dirname(abspath(__file__)))
dirname()
是一个函数,它返回指定文件或目录的目录名。- 这里,我们首先使用
abspath(__file__)
获取当前脚本的绝对路径,然后使用dirname()
获取这个路径的目录部分。 - 这行代码将打印出当前脚本所在的目录的绝对路径。
from os.path import abspath, dirname print(abspath(__file__)) print(dirname(abspath(__file__)))
2、from pathlib import Path
-
print(Path(__file__))
:- 这行代码创建了一个
Path
对象,该对象表示当前脚本(__file__
)的文件路径。 - 打印这个
Path
对象通常会显示一个表示文件路径的字符串,这个字符串的格式取决于你的操作系统。在 Unix 和 Unix-like 系统(如 Linux 和 macOS)上,路径通常使用正斜杠(/
)作为分隔符;而在 Windows 上,路径使用反斜杠(\
)作为分隔符。 - 这个
Path
对象本身并没有进行任何路径解析或规范化,它只是封装了__file__
变量中的字符串。
- 这行代码创建了一个
-
print(Path(__file__).resolve())
:resolve()
方法是Path
对象的一个方法,它返回路径的绝对版本。如果给定的路径是相对路径,resolve()
会解析它,将其转换为绝对路径。- 这意味着如果脚本是从一个相对位置运行的,
resolve()
会找到这个相对路径所指向的实际绝对位置。 - 打印这个
resolve()
方法的结果会展示脚本的绝对路径,无论它是如何被调用的。
-
print(Path(__file__).resolve().parent)
:parent
是Path
对象的一个属性,它返回表示路径父目录的Path
对象。- 在这里,
resolve()
方法首先被调用,以确保我们得到的是绝对路径。然后,parent
属性被用来获取这个绝对路径的父目录。 - 打印这个
parent
属性会展示脚本所在目录的绝对路径。
总的来说,这些代码展示了如何使用 pathlib.Path
对象来方便地操作文件路径。Path
对象提供了许多有用的方法和属性,可以轻松地执行诸如获取绝对路径、解析路径、获取父目录等操作,而无需使用传统的字符串操作或文件系统API
from pathlib import Path print(Path(__file__)) print(Path(__file__).resolve()) print(Path(__file__).resolve().parent)
标签:__,当前目录,python,路径,绝对路径,file,print,Path From: https://www.cnblogs.com/z67767707/p/18039028