python里append()要用什么import_python多级别项目时如何 relative import

在许多中型以上的python项目,为了方便维护、代码简介,我们常常把同一功能模块的.py放在一起,不同功能模块放在不同的folder里,这就产生了一个问题:在sub folder里,如何调用同级/上一级/上一级的同级的subfolder的.py,或者说,如何实现任意级别的调用,同时保持代码规范。

可能有的同学会感到疑惑,直接change directory不就行了吗? 这个做法在单个任务里是可行的,但是在中型项目里,如果跨级别的相对引用超过1个,working directory来回变就不是一个好事情,通常变来变去,自己也不知道当前变到哪里,所以函数内不能轻易change wd。

在案例测试之前,先介绍一些具体概念。

Python Search Path与引用文件路径的关系

1 当我们import module的时候 python会搜索以下地方作为search path

1。当前执行这条import语句脚本所在的路径,或者是current working directory(在交互模式下,比如IPYTHON console中)

2.PYTHONPATH的环境变量里的路径

3.python 安装时依赖的一些路径,在python安装已经配置好

以上所有路径都可以由 import sys然后打印sys.path看到

所以如果我们有一个脚本test.py,想要成功import,有四种方法

1.放在current directory下

2.修改pythonPath环境变量,把test.py所在的路径放在环境变量的脚本中,这样python启动时加载环境变量就会读取到

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值