zoukankan      html  css  js  c++  java
  • python sys.path[0] 的解释

    sys.path是python的搜索模块的路径集,返回的结果是一个list

    path[0]

    此列表的第一项,path[0],在程序启动时初始化,是包含用来调用Python解释器的脚本的目录。如果脚本目录不可用(例如,如果解释器被交互式地调用,或者脚本是从标准输入读取的),path[0]是空字符串,它引导Python首先在当前目录中搜索模块。 
    比如在C:Userchenxi3DestopSimplify中有一个testSysPath. py

    import sys
    print("
    ".join(sys.path))

    输出是:

    C:Userschenxi3DesktopSimplify 
    C:Python27DLLs 
    C:Python27lib 
    C:Python27libplat-win 
    C:Python27liblib-tk 
    C:Python27 
    C:Python27libsite-packages

    path[0] 是C:Userschenxi3DesktopSimplify,调用python解释器的脚本所在的目录。 其实就是存放需要运行的代码的路径

    什么是python解释器?(下面是选取廖雪峰老师文章的总结)

    当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。

    由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种Python解释器。

    常见的Python解释器有: CPython IPython   PyPy  Jython   IronPython      

    python中os.path.dirname(__file__)的使用
     (1).当"print os.path.dirname(__file__)"所在脚本是以完整路径被运行的, 那么将输出该脚本所在的完整路径,比如:
          python c:/python27/test/test.py
          那么将输出 c:/python27/test/
     (2).当"print os.path.dirname(__file__)"所在脚本是以相对路径被运行的, 那么将输出空目录,比如:
         python test.py

         那么将输出空字符串

    以下代码可以保证在任何时候都切换到当前执行脚本所在目录中,该当当做公式熟记在心。

    [python] view plain copy
     
        1. abspath = os.path.dirname(__file__)  
        2. sys.path.append(abspath)  
        3. print abspath  
        4. if abspath=='':  
        5.     os.chdir(sys.path[0])      
        6. else:  
        7.     os.chdir(abspath)    
  • 相关阅读:
    [LeetCode 1029] Two City Scheduling
    POJ 2342 Anniversary party (树形DP入门)
    Nowcoder 106 C.Professional Manager(统计并查集的个数)
    2018 GDCPC 省赛总结
    CF 977 F. Consecutive Subsequence
    Uva 12325 Zombie's Treasure Chest (贪心,分类讨论)
    Poj 2337 Catenyms(有向图DFS求欧拉通路)
    POJ 1236 Network of Schools (强连通分量缩点求度数)
    POJ 1144 Network (求割点)
    POJ 3310 Caterpillar(图的度的判定)
  • 原文地址:https://www.cnblogs.com/111testing/p/9574952.html
Copyright © 2011-2022 走看看