zoukankan      html  css  js  c++  java
  • python 获取当前当前目录 脚本目录 被执行脚本目录

      获取目录的时候,google得到的结果一般都是使用os模块的getcwd()函数,但总是获取不到,额,英语不是很好,搞很久才明白,原来获取的是当前工作目录。

      好吧,总是不知道用什么关键词来进行查找,能力有限哦......终于皇天不负有心人,原来获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path[0]变量或者sys.argv[0]来获得。实际上sys.path是Python会去寻找模块的搜索路径列表,sys.path[0]和sys.argv[0]是一回事,因为Python会自动把sys.argv[0]加入sys.path。

      总之,举个例子来讲:

       home/echo

         |

            [dir]test

            [file]test.py

    运行test/test.py,使用以下的命令:

    •   os.getcwd(),home/echo,取的是当前的工作目录
    •   os.path[0]|os.argv[0] test/test.py,取的是被初始执行脚本所在的目录
    •    os.path.realpath(__file__),/home/echo/test/test.py,取的是脚本的完整目录

    特别的__file__这个变量有时候返回相对路径,有时候返回绝对路径,因此还要用os.path.realpath()函数来处理一下。也即在这个例子 里,os.path.realpath(__file__)输出是“/home/echo/test/test.py”,而 os.path.split(os.path.realpath(__file__))[0]输出是“/home/echo/test”。

    作者:xiaoxia

    出处:http://cnblogs.com/xiaoxia

    我的淘宝:http://shop62115161.taobao.com/

    本文遵从GNU 的自由文档许可证(Free Document License)的条款,欢迎转载、修改、散布。

  • 相关阅读:
    算法学习(二)——树状数组求逆序数
    ZOJ 2412 Farm Irrigation
    排列的生成算法(一)
    汉诺塔递归实现
    汇编(五)
    汇编(四)
    汇编(三)
    汇编(二)
    0103MySQL中的B-tree索引 USINGWHERE和USING INDEX同时出现
    0103如何通过索引长度确定是否使用全索引
  • 原文地址:https://www.cnblogs.com/xiaoxia/p/1788966.html
Copyright © 2011-2022 走看看