Python基础学习之sys.argv[0]及类似方法

前言

Python编程中,经常会遇到要拿取当前代码路径或者当前代码名称,今天分享几个拿取的方法。

一.功能目的

拿取当前代码路径或者当前代码名称。

二.功能调研

 

根据搜索引擎,我们可以提取到以下信息:

1.sys.argv[0] 是脚本自身的名称

需要注意的是,sys.argv[0] 的值取决于你如何运行脚本。如果你在命令行中直接运行脚本,那么sys.argv[0] 将会是脚本文件的路径(可能是相对的或绝对的)。如果你是在一个交互式环境(如Python shell或IDE)中运行代码片段,sys.argv 可能不包含有用的信息,因为它通常只包含Python解释器的路径。

import sys  
  
# 获取脚本名称  
script_name = sys.argv[0]  
  
# 打印脚本名称  
print("The name of this script is:", script_name)

2.os.path.abspath()函数会将其转换为绝对路径。

import os  
  
# 获取当前执行的脚本文件的绝对路径  
current_file_path = os.path.abspath(__file__)  
print("The absolute path of this script is:", current_file_path)

3.os.path.dirname()函数会返回指定路径的目录部分。

import os  
  
# 获取当前执行的脚本文件所在的目录路径  
current_directory = os.path.dirname(os.path.abspath(__file__))  
print("The directory of this script is:", current_directory)

4.os.path.basename()函数会返回路径中的最后一个部分,即文件名。

import sys  
import os  
  
# 获取脚本的绝对路径  
script_path = sys.argv[0]  
  
# 获取脚本文件名(不带路径)  
script_name_only = os.path.basename(script_path)  
  
# 打印脚本文件名  
print("The name of this script (without path) is:", script_name_only)

根据以上信息,我们可以导入相应的库,拿到我们想要的值。

三.编写代码

1.代码示例

代码如下(示例):

import sys  
import os 
        
aa = sys.argv[0]
print(aa)
bb = os.path.abspath(sys.argv[0])
print(bb)
cc = os.path.dirname(os.path.abspath(sys.argv[0]))
print(cc)
dd = os.path.basename(bb)
print(dd)

2.结果如下

运行这段代码,就可以得到以下结果:

总结

本文主要讲了使用 sys.argv[0] 、os.path.abspath()函数、os.path.dirname()函数、os.path.basename()函数来拿取当前代码路径或者当前代码名称。

后续会持续更新,欢迎关注!

  • 17
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值