Python怎么获取当前路径?,python获取路径方法?

在 Python 中获取当前路径的完整指南

在 Python 开发中,获取“当前路径”通常有两种不同的含义:一种是当前工作目录(Current Working Directory),另一种是当前脚本文件所在的目录(Script Directory),这两者在运行方式不同时(例如在 IDE 中运行与在命令行中运行)可能会指向不同的位置。

获取当前工作目录 (CWD)

工作目录是指 Python 解释器当前正在运行的文件夹,如果你在终端中 cd 到某个文件夹并运行脚本,该文件夹就是工作目录。

[30] Python文件路径 | 文件在哪里,代码咋知道
加载中
[30] Python文件路径 | 文件在哪里,代码咋知道

使用 os 模块(传统方法)

  • 代码实现
    import os
    cwd = os.getcwd()
    print(f"当前工作目录是: {cwd}")
  • 特点:简单直接,兼容所有 Python 版本。

使用 pathlib 模块(现代方法,推荐)

  • 代码实现

    Python怎么获取当前路径?,python获取路径方法?

    from pathlib import Path cwd = Path.cwd() print(f"当前工作目录是: {cwd}")
  • 特点:面向对象,路径操作更直观,是 Python 3.4+ 的标准推荐方式。

获取当前脚本文件所在的目录

无论你在哪个目录下启动程序,如果你想获取代码文件本身存放的位置(例如为了读取同级目录下的配置文件),应该使用 __file__ 变量。

使用 os 模块

  • 代码实现
    import os
    # 获取当前脚本的绝对路径
    script_path = os.path.abspath(__file__)
    # 获取脚本所在的文件夹目录
    script_dir = os.path.dirname(script_path)
    print(f"脚本文件所在目录: {script_dir}")

使用 pathlib 模块(推荐)

  • 代码实现
    from pathlib import Path
    # .resolve() 用于获取绝对路径,.parent 获取父级目录
    script_dir = Path(__file__).resolve().parent
    print(f"脚本文件所在目录: {script_dir}")

    Python怎么获取当前路径?,python获取路径方法?


核心区别对比

为了防止混淆,请参考下表选择合适的方法:

需求场景 推荐方法 关键点
获取用户执行命令时的位置 Path.cwd()os.getcwd() 随启动位置而改变
获取代码文件存放的位置 Path(__file__).resolve().parent 随文件存放位置而改变
拼接路径(如读取配置) script_dir / "config.ini"

Python怎么获取当前路径?,python获取路径方法?

建议使用 pathlib 的 运算符

常见应用场景:构建绝对路径

在实际项目中,最常见的做法是基于脚本目录构建绝对路径,以避免因启动位置不同而导致的文件找不到(FileNotFoundError)错误。

  • 最佳实践代码

    from pathlib import Path
    # 1. 定位到项目根目录
    BASE_DIR = Path(__file__).resolve().parent
    # 2. 拼接子文件夹中的文件路径
    config_path = BASE_DIR / "config" / "settings.json"
    print(f"配置文件的绝对路径为: {config_path}")

重点总结

  • 如果需要知道“我在哪里运行这个程序” $rightarrow$ 使用 Path.cwd()
  • 如果需要知道“这个代码文件放在哪里” $rightarrow$ 使用 Path(__file__)

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/487936.html

(0)
jquery ui cdn怎么用,jquery ui cdn链接
上一篇 2026年7月12日 17:22
Linux如何删除驱动?,Linux卸载驱动的命令有哪些?
下一篇 2026年7月12日 17:23

相关推荐

  • 服务器机房维护方案怎么做,机房日常维护流程有哪些

    企业数字化转型的核心在于数据中心的稳定性与安全性,而构建一套科学、系统且可执行的维护体系,是保障业务连续性、延长设备寿命以及降低运营成本的根本途径,核心结论在于:机房维护必须从传统的被动抢修转向主动预防,通过环境、硬件、软件及安全的全维度精细化管理,结合自动化监控工具,实现99.99%的高可用性目标,制定完善的……

    2026年2月19日
    15800
  • 服务器如何搭建web项目?服务器搭建web项目步骤详解

    服务器搭建Web项目的核心在于环境配置的标准化、安全部署的严密性以及性能优化的前瞻性,三者缺一不可,成功的Web项目部署不仅仅是将代码上传至服务器,更是一个涉及操作系统调优、网络环境配置、服务组件协同工作的系统工程,通过标准化的流程管理,可以确保项目在高并发场景下的稳定性,同时降低后期运维的时间成本,以下是关于……

    2026年3月6日
    10500
  • 我的世界手游有哪些RPG服务器?,哪个最好玩?

    我的世界手游RPG服务器,是通过插件和自定义地图在生存基础上构建角色扮演、任务剧情、职业成长等玩法的服务器,目前国内网易版的花雨庭、梦世界等平台包含大量RPG子服,国际版基岩端也有The Hive等优质服务器,但选择时需重点考察服务器稳定性、玩法深度以及背后的托管服务商资质,核心指标:如何判断一个RPG服务器是……

    2026年7月28日
    1400
  • 服务器怎么没有香港服务器?香港服务器无法连接怎么办

    服务器列表中没有香港服务器选项,通常是由数据中心资源调整、合规性策略变动、网络架构优化或商业决策等核心因素导致的,这并不意味着香港节点永久缺失,而是服务商在进行资源整合或技术升级时的临时状态,用户需从技术合规、网络质量及供应商资质等维度进行深度排查,以获取最准确的配置方案,资源调配与库存周期的动态影响服务器资源……

    2026年3月16日
    10700
  • 服务器部署图怎么画才正确,有哪些关键步骤?

    服务器部署图是系统架构的全局地图,它直接决定了你的业务在故障、扩容、运维时的响应速度, 没有这张图,团队在排查问题时就像盲人摸象,每次变更都要翻半天文档,甚至靠记忆,部署图的价值在于把抽象的逻辑变成可视化的结构,让运维、开发、甚至老板都能一眼看懂服务器怎么连、数据怎么跑、单点在哪里,服务器部署图的核心价值:为什……

    2026年8月7日
    700
  • 服务器快速配置linux,linux服务器怎么快速配置?

    服务器快速配置Linux的核心在于标准化流程与自动化工具的结合,通过精简初始化步骤、锁定关键安全配置以及优化软件源,可以在10分钟内搭建出一个高可用、高安全的Linux运行环境,高效配置的本质不是单纯追求速度,而是在最短时间内完成符合生产环境标准的系统初始化,避免因盲目求快而埋下安全隐患,实现效率与安全的完美平……

    2026年3月23日
    9900
  • 个人http服务器怎么搭建?如何免费搭建个人网站

    搭建个人HTTP服务器是解决数据隐私、实现内网穿透及低成本存储的高效方案,推荐使用Nginx或Caddy配合反向代理,既安全又易于维护,在云计算巨头垄断服务的今天,将数据掌握在自己手中成为一种隐秘而坚定的需求,无论是为了备份家庭照片,还是搭建专属的代码仓库,亦或是运行私有化的笔记应用,个人HTTP服务器都扮演着……

    2026年6月19日
    2000
  • 你知道最新手机服务器有哪些?,哪个牌子性价比高

    最新手机服务器是针对移动端应用场景优化的云端计算资源,当前主流选择包括云手机服务器、边缘计算节点和轻量级应用服务器,以简米科技和酷番云为代表的持牌服务商提供了合规、稳定且高效的基础设施,手机服务器是什么手机服务器并非全新硬件品类,而是指部署在云端、专门为移动应用提供后端支持的服务器集群,它需要处理大量短连接、高……

    2026年8月24日
    300
  • 服务器有多少cpu,服务器cpu个数和核数怎么看?

    服务器的CPU数量并非一个单一的固定数值,而是一个包含物理插槽数、单颗核心数以及逻辑线程数的多维指标,准确评估这一指标需要结合硬件架构与操作系统视角,核心结论在于:物理CPU决定服务器的并行处理上限,逻辑CPU决定操作系统的任务调度能力,而核心数则是计算性能的基石, 在实际运维与选型中,必须区分这三者的关系,才……

    2026年2月23日
    14700
  • 服务器怎么有IP地址?服务器IP地址配置方法详解

    服务器的获取方式主要分为自建物理机房、租用IDC服务商硬件以及采购云服务器三种核心途径,对于绝大多数企业与个人开发者而言,选择正规云服务商进行租赁或采购,是目前性价比最高、稳定性最强且运维成本最低的解决方案,这一结论基于对硬件成本、网络环境、运维难度及数据安全性的综合考量,在数字化转型的当下,将专业的基础设施维……

    2026年3月14日
    10900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注