zoukankan      html  css  js  c++  java
  • sys.path.insert

    模块要处于Python搜索路径中的目录里才能被导入,但我们不喜欢维护一个永久性的大目录,因为其他所有的Python脚本和应用程序导入模块的时候性能都会被拖累。本节代码动态地在该路径中添加了一个"目录",当然前提是此目录存在而且此前不在sys.path中。

    sys.path是个列表,所以在末尾添加目录是很容易的,用sys.path.append就行了。当这个append执行完之后,新目录即时起效,以后的每次import操作都可能会检查这个目录。如同解决方案所示,可以选择用sys.path.insert(0,…,这样新添加的目录会优先于其他目录被import检查。

    即使sys.path中存在重复,或者一个不存在的目录被不小心添加进来,也没什么大不了,Python的import语句非常聪明,它会自己应付这类问题。但是,如果每次import时都发生这种错误(比如,重复的不成功搜索,操作系统提示的需要进一步处理的错误),我们会被迫付出一点小小的性能代价。为了避免这种无谓的开销,本节代码在向sys.path添加内容时非常谨慎,绝不加入不存在的目录或者重复的目录。程序向sys.path添加的目录只会在此程序的生命周期之内有效,其他所有的对sys.path的动态操作也是如此。

  • 相关阅读:
    Android从零开发目录
    全国软考数据库系统工程师教程(第2版) 第1章 计算机系统知识
    全国软考数据库系统工程师教程(第2版)目录
    jvm性能调优(转载)
    开博宣言
    使用C#为Uipath封装控件
    Java时间简单操作
    js限制文本框内只能输入数字
    正则表达式语法
    JVM调优浅谈
  • 原文地址:https://www.cnblogs.com/lovelyming/p/7619982.html
Copyright © 2011-2022 走看看