• Python 之 ImportError: No module named ***


    假设想使用非当前模块中的代码,须要使用Import。这个大家都知道。 


    假设你要使用的模块(py文件)和当前模块在同一文件夹。仅仅要import对应的文件名称就好,比方在a.py中使用b.py: 

    import b 


    可是假设要import一个不同文件夹的文件(比如b.py)该怎么做呢? 
    首先须要使用sys.path.append方法将b.py所在文件夹增加到搜素文件夹中。

    然后进行import就可以,比如 
    import sys 
    sys.path.append('c:xxxx.py') # 这个样例针对 windows 用户来说的 
    大多数情况。上面的代码工作的非常好。可是假设你没有发现上面代码有什么问题的话,可要注意了,上面的代码有时会找不到模块或者包(ImportError: No module named xxxxxx),这是由于: 
    sys模块是使用c语言编写的。因此字符串支持 ' ', ' ', ' '等来表示特殊字符。所以上面代码最好写成: 
    sys.path.append('c:\xxx\b.py') 
    或者sys.path.append('c:/xxxx/b.py') 

    这样能够避免由于错误的组成转义字符,而造成无效的搜索文件夹(sys.path)设置。 


    怎样将路径加入到sys.path?

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

    能够在python 环境下使用sys.path.append(path)加入相关的路径,但在退出python环境后自己加入的路径就会自己主动消失了!

    能够使用下面命令输入当前python 的搜索路径:

    python -c"import sys;print '当前的python是:'+sys.prefix;print ' '.join(sys.path)"

    练习使用sys.path.append方法加入路径,显示退出python会消失!

    python -c"import sys;print '当前的python是:'+sys.prefix;sys.path.append(r'E:DjangoWord');print ' '.join(sys.path)"

    再次执行,会发现 自己加入路径E:DjangoWord()不存在了!

    python -c"import sys;print '当前的python是:'+sys.prefix;print ' '.join(sys.path)"


    怎样将路径永久加入到sys.path?


    详址:http://my.oschina.net/leejun2005/blog/109679


  • 相关阅读:
    App界面设计利器Sketch 精选案例合集
    破解有道词典在线翻译接口--python
    欧几里得算法/欧几里得扩展算法-python
    深浅拷贝--python(预习中随手写的。因为当时很无聊。。。)
    为tomcat动态添加jndi数据源信息
    四个年头
    使用Node.JS访问Hyperledger Fabric的gRPC服务
    Hyperledger fabric Client Node.js Hello World示例程序
    在IBM Bluemix上部署Hyperledger应用
    Hyperledger区块数据的访问
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/7238086.html
Copyright © 2020-2023  润新知