PYTHONPATH与import(模块导入)
1.Python 环境变量
下面几个重要的环境变量,它应用于Python:
变量名 | 描述 |
---|---|
PYTHONPATH | PYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面寻找。结果是sys.path。 |
PYTHONSTARTUP | Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此变量指定的文件中的代码。 |
PYTHONCASEOK | 加入PYTHONCASEOK的环境变量, 就会使python导入模块的时候不区分大小写. |
PYTHONHOME | 另一种模块搜索路径。它通常内嵌于的PYTHONSTARTUP或PYTHONPATH目录中,使得两个模块库更容易切换。 |
2.pycharm执行和命令行执行的区别
pycharm运行前自动把工程加入path(在pycharm中没找到在哪,知道的童鞋可以补充)
命令行和其他工具执行不会添加path,需要在文件中使用sys.path添加
3.python中循环导入问题
问题发生的原因:
1.逻辑混乱不清楚,没有规划好层级和模块
2.Python根本就是可以循环引用的,只要你循环引用中的模块并不是在定义阶段就马上使用
导入的过程会执行的代码:
1.加载模块会导致这个模块被执行。也就是被执行模块的顶层代码将直接被执行。这通常包含设定全局变量以及类和函数的声明。
2.一个模块只被加载一次,无论它被导入多少次。这可以阻止多重导入时代码被多次执行。
3.第一次引用包内模块或包时,都会执行包的初始化代码,即包内的__init__.py
的代码。
标签:
python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构