python-获取当前目录路径的几个方法

 

1、from os.path import abspath, dirname

  1. print(abspath(__file__))

    • __file__ 是一个特殊的变量,它表示当前脚本的文件名(带有路径)。
    • abspath() 是一个函数,它返回指定文件或目录的绝对路径。
    • 因此,这行代码将打印出当前脚本的绝对路径。
  2. 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

  1. print(Path(__file__)):

    • 这行代码创建了一个 Path 对象,该对象表示当前脚本(__file__)的文件路径。
    • 打印这个 Path 对象通常会显示一个表示文件路径的字符串,这个字符串的格式取决于你的操作系统。在 Unix 和 Unix-like 系统(如 Linux 和 macOS)上,路径通常使用正斜杠(/)作为分隔符;而在 Windows 上,路径使用反斜杠(\)作为分隔符。
    • 这个 Path 对象本身并没有进行任何路径解析或规范化,它只是封装了 __file__ 变量中的字符串。
  2. print(Path(__file__).resolve()):

    • resolve() 方法是 Path 对象的一个方法,它返回路径的绝对版本。如果给定的路径是相对路径,resolve() 会解析它,将其转换为绝对路径。
    • 这意味着如果脚本是从一个相对位置运行的,resolve() 会找到这个相对路径所指向的实际绝对位置。
    • 打印这个 resolve() 方法的结果会展示脚本的绝对路径,无论它是如何被调用的。
  3. 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)

 

posted @   坚固的大兴  阅读(2721)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示