源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Python 获取当前所在目录的方法详解

  • 时间:2022-09-13 07:21 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Python 获取当前所在目录的方法详解
[b]sys.path[/b] 模块搜索路径的字符串列表。由环境变量PYTHONPATH初始化得到。 sys.path[0]是调用Python解释器的当前脚本所在的目录。 [b]sys.argv[/b] 一个传给Python脚本的指令参数列表。 sys.argv[0]是脚本的名字(由系统决定是否是全名) 假设显示调用python指令,如 python demo.py ,会得到绝对路径; 若直接执行脚本,如 ./demo.py ,会得到相对路径。 [code]os.getcwd()[/code] 获取当前工作路径。在这里是绝对路径。 [url=https://docs.python.org/2/library/os.html#os.getcwd]https://docs.python.org/2/library/os.html#os.getcwd[/url] [b]__file__[/b] 获得模块所在的路径,可能得到相对路径。 如果显示执行Python,会得到绝对路径。 若按相对路径来直接执行脚本 [code]./pyws/path_demo.py [/code],会得到相对路径。 为了获取绝对路径,可调用 [code]os.path.abspath()[/code] os.path 中的一些方法 [b]os.path.split(path)[/b] 将路径名称分成头和尾一对。尾部永远不会带有斜杠。如果输入的路径以斜杠结尾,那么得到的空的尾部。 如果输入路径没有斜杠,那么头部位为空。如果输入路径为空,那么得到的头和尾都是空。 [url=https://docs.python.org/2/library/os.path.html#os.path.split]https://docs.python.org/2/library/os.path.html#os.path.split[/url] [b]os.path.realpath(path)[/b] 返回特定文件名的绝对路径。 [url=https://docs.python.org/2/library/os.path.html#os.path.realpath]https://docs.python.org/2/library/os.path.html#os.path.realpath[/url] [b]代码示例[/b] 环境 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:\
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部