python获取程序执行文件路径的方法(推荐)

获取程序执行文件路径是Python开发中很常见的需求。本文将介绍2种常用的Python获取程序执行文件路径的方法。

方法一:使用os模块的path属性

下面是一段使用os模块获取程序执行文件路径的Python代码:

import os

# 获取当前运行的py文件的文件名
print(__file__)

# 获取当前运行的py文件所在的目录
print(os.path.dirname(os.path.abspath(__file__)))

首先,Python内置了一个特殊变量__file__,获取当前运行的py文件的文件名。然后,使用os.path模块的abspath()方法将文件名转换成绝对路径,再使用os.path.dirname()方法取出文件所在的目录即可。

方法二:使用sys模块的argv属性

下面是一段使用sys模块获取程序执行文件路径的Python代码:

import sys
import os

# 获取程序执行的绝对路径
path = os.path.abspath(sys.argv[0])
print(path)

# 获取程序执行的目录
dir_path = os.path.dirname(path)
print(dir_path)

sys.argv是一个包含命令行参数的列表。一般情况下,列表中第一个元素是脚本文件名,因此,这里的sys.argv[0]就是程序的绝对路径。使用os.path.abspath()方法将其转换成绝对路径,再使用os.path.dirname()方法取出其所在目录即可。

示例说明

示例1

现在有一个名叫test.py的Python脚本,它在D:\python_project目录下。

# test.py文件的内容如下
import os

# 获取当前运行的py文件的文件名
print(__file__)

# 获取当前运行的py文件所在的目录
print(os.path.dirname(os.path.abspath(__file__))))

执行该脚本,会得到以下输出结果:

D:\python_project\test.py
D:\python_project

示例2

设在/var/www/cgi-bin/目录下有一个名叫test.py的python脚本。

# test.py文件的内容如下
import sys
import os

# 获取程序执行的绝对路径
path = os.path.abspath(sys.argv[0])
print(path)

# 获取程序执行的目录
dir_path = os.path.dirname(path)
print(dir_path)

执行该脚本,会得到以下输出结果:

/var/www/cgi-bin/test.py
/var/www/cgi-bin

通过上述两个示例,我们可以看出,无论在什么系统环境下,Python获取程序执行文件路径的方法都是可行的。当然,也需要根据实际情况选择适合自己的方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python获取程序执行文件路径的方法(推荐) - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • python获取交互式ssh shell的方法

    获取交互式SSH shell是实现自动化配置、自动化发布、自动化管理等重要操作的关键。Python作为一种高级编程语言,提供了丰富的模块和工具来帮助我们实现自动化操作。下面是获取交互式SSH shell的方法的完整攻略。 使用paramiko模块获取SSH shell Paramiko是一个Python库,可以用于SSHv2协议的加密与认证。它支持Pytho…

    python 2023年6月3日
    00
  • python 中的requirements.txt 文件的使用详情

    在Python项目中,requirements.txt文件是一个文本文件,用于列出项目依赖的Python包及其版本号。它可以帮助我们更好地管理项目依赖,确保项目在不同环境中的一致性。本文将介绍如何使用Python中的requirements.txt文件,并提供两个示例。 1. 生成requirements.txt文件 我们可以使用pip命令生成require…

    python 2023年5月15日
    00
  • python通过colorama模块在控制台输出彩色文字的方法

    下面是Python通过colorama模块在控制台输出彩色文字的方法的完整攻略: 简介 Colorama是一个可以在控制台输出彩色文字的Python库,它跨平台兼容Windows、Linux、Mac OS等操作系统,并且支持ANSI转义码、Windows控制台和Linux中的256色彩色输出。 安装 可以使用pip来安装colorama库,只需要在终端(或命…

    python 2023年6月3日
    00
  • 如何使用Python实现数据库中数据的多表查询?

    以下是使用Python实现数据库中数据的多表查询的完整攻略。 数据库中数据的多表查询简介 在数据库中,多表查询是指从多个表中检索数据的查询。在Python中,可以使用pymysql库连接到MySQL数据库,并使用JOIN子句实现多表查询。 步骤1:连接到数据库 在Python中,可以使用pymysql库连接MySQL数据库。以下是连接到MySQL数据库的基本…

    python 2023年5月12日
    00
  • python 常用的基础函数

    Python常用的基础函数攻略 Python是一种高级编程语言,具有简单易学、功能强大、可扩展性强等特点。在Python中,有许多常用的基础函数,这些函数可以帮助完成各种任务。本篇攻略将为您详细讲解Python常用的基础函数,包括字符串函数、列表函数、字典函数、数函数等。 字符串函数 1. len() len()函数用于返回字符串的长度。 s = ‘Hell…

    python 2023年5月13日
    00
  • python 基于aiohttp的异步爬虫实战详解

    Python基于aiohttp的异步爬虫实战详解 异步编程是Python中的一种高效的编程方式,可以提高程序的性能和响应速度。在网络爬虫中异步编程可以帮助我们快速地获取网内容。本文将介绍Python基于aiohttp的异步爬虫实战详解。 安装aiohttp库 在开始之前,我们需要安装aiohttp库。可以使用pip命令来安装: pip install aio…

    python 2023年5月13日
    00
  • python 获取星期字符串的实例

    下面是关于 Python 获取星期字符串的实例攻略: 1. 使用 datetime 模块 Python 标准库中的 datetime 模块提供了一个 weekday() 方法,可以返回相应日期的星期,其中星期一到星期日分别对应数字 0 到 6。我们可以根据这个数字来得到星期字符串。具体实现代码如下: import datetime weekdays = [&…

    python 2023年6月3日
    00
  • Python实现以主程序的形式执行模块

    Python实现以主程序的形式执行模块可以通过以下步骤来完成: 1. 编写模块文件 编写一个python模块,作为后续需要执行的主程序。此模块文件需要包含入口函数。例如,我们创建一个名为example_module.py的模块,并添加以下代码: def main(): print("Hello, World!") if __name__ …

    python 2023年5月30日
    00
合作推广
合作推广
分享本页
返回顶部