知行编程网知行编程网  2022-08-25 08:30 知行编程网 隐藏边栏  18 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python如何获取当前目录的相关知识,包括python查看目录下的文件,以及python获取项目根目录这些编程知识,希望对大家有参考作用。

python如何获取当前目录

本文将为大家讲解使用python获取当前目录的方法及相关示例。非常清晰简单,有需要的朋友可以参考。


sys.path

模块搜索路径的字符串列表。由环境变量 PYTHONPATH 初始化。

sys.path[0]是调用Python解释器的当前脚本所在的目录。


sys.argv

一个传给Python脚本的指令参数列表。

sys.argv[0]是脚本的名字(由系统决定是否是全名)

假设显示调用python指令,如 python demo.py ,会得到绝对路径;

若直接执行脚本,如 ./demo.py ,会得到相对路径。


os.getcwd()

获取当前工作路径。在这里是绝对路径。


__file__

获得模块所在的路径,可能得到相对路径。

如果显示执行Python,会得到绝对路径。

如果直接根据相对路径执行脚本./pyws/path_demo.py,就会得到相对路径。

为了获取绝对路径,可调用 os.path.abspath()


os.path 中的一些方法


os.path.split(path)

将路径名拆分为头尾对。从来没有尾随斜杠。如果输入路径以斜杠结尾,则结果为空尾随。

如果输入路径没有斜杠,则标题为空。如果输入路径为空,则生成的头部和尾部为空。


os.path.realpath(path)

返回特定文件名的绝对路径。


代码示例

环境 Win7, Python2.7

以 /e/pyws/path_demo.py 为例

#!/usr/bin/env python
import os
import sys
 
if __name__ == '__main__':
  print "sys.path[0] =", sys.path[0]
  print "sys.argv[0] =", sys.argv[0]
  print "__file__ =", __file__
  print "os.path.abspath(__file__) =", os.path.abspath(__file__)
  print "os.path.realpath(__file__) = ", os.path.realpath(__file__)
  print "os.path.dirname(os.path.realpath(__file__)) =", os.path.dirname(os.path.realpath(__file__))
  print "os.path.split(os.path.realpath(__file__)) =", os.path.split(os.path.realpath(__file__))
  print "os.getcwd() =", os.getcwd()

在 /d 中运行,输出为:

$ python /e/pyws/path_demo.py
sys.path[0] = E:\pyws
sys.argv[0] = E:/pyws/path_demo.py
__file__ = E:/pyws/path_demo.py
os.path.abspath(__file__) = E:\pyws\path_demo.py
os.path.realpath(__file__) = E:\pyws\path_demo.py
os.path.dirname(os.path.realpath(__file__)) = E:\pyws
os.path.split(os.path.realpath(__file__)) = ('E:\\pyws', 'path_demo.py')
os.getcwd() = D:\

在e盘中用命令行直接执行脚本:

$ ./pyws/path_demo.py
sys.path[0] = E:\pyws
sys.argv[0] = ./pyws/path_demo.py
__file__ = ./pyws/path_demo.py
os.path.abspath(__file__) = E:\pyws\path_demo.py
os.path.realpath(__file__) = E:\pyws\path_demo.py
os.path.dirname(os.path.realpath(__file__)) = E:\pyws
os.path.split(os.path.realpath(__file__)) = ('E:\\pyws', 'path_demo.py')
os.getcwd() = E:\

python学习网,大量的免费
,欢迎在线学习!

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享