zoukankan      html  css  js  c++  java
  • Python导入其他目录的模板

    如何将路径“永久"添加到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)"

    为解决这个问题,可以有以下方法:


    将自己做的py文件放到 site_packages 目录下:

    下面命令显示了 site-packages 目录:

    python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"

     但是这样做会导致一个问题,即各类模块都放到此文件夹的话,会导致乱的问题,这一点是显而易见的。

     注意,也不创建子文件夹,再将自己的模块放到子文件夹解决问题,这会导致使用import 语句时错误。


    使用pth文件,在 site-packages 文件中创建 .pth文件,将模块的路径写进去,一行一个路径,以下是一个示例,pth文件也可以使用注释:

    # .pth file for the  my project(这行是注释)
    E:DjangoWord
    E:DjangoWordmysite
    E:DjangoWordmysitepolls

    这个不失为一个好的方法,但存在管理上的问题,而且不能在不同的python版本中共享。

    我采用的是第2种方法

  • 相关阅读:
    jQuery获取鼠标事件源
    windows中MongoDB安装和环境搭建
    前端获取后台数据的方法:ajax、axios、fetch
    浅谈:easy-mock的使用
    安全篇-AES/RSA加密机制
    PHP开发api接口安全验证
    Ajax简单实现文件异步上传的多种方法
    PHP7有没有你们说的那么牛逼
    基于laravel框架构建最小内容管理系统
    redis用法分析
  • 原文地址:https://www.cnblogs.com/ppsunlight/p/3937136.html
Copyright © 2011-2022 走看看