sys.path.append()用法

sys.path 返回的是一个列表!
该路径已经添加到系统的环境变量了,当我们要添加自己的搜索目录时,可以通过列表的append()方法;
对于模块和自己写的脚本不在同一个目录下,在脚本开头加sys.path.append(‘xxx’):

用命令行去执行测试脚本的时候,如不添加当前项目路径,会报找不到模块的错。
在pycharm中运行的时候,pycharm会自动将项目所在目录添加到了sys.path中,所以从项目根目录查找是可以找到该模块的。

#获取项目相对路径
basedir2=os.path.dirname(os.path.dirname(__file__))
sys.path.append(basedir2)

import os
basedir1=os.path.dirname(__file__)
basedir2=os.path.dirname(os.path.dirname(__file__))
print(basedir1)
print(basedir2)

D:/shaoxchen/joyrun_auto/tools
D:/shaoxchen/joyrun_auto

如果需要导入上级目录的文件,需要获取项目相对路径才可以,不然会找不到导入的模块
例如测试脚本yp-exp.py想要引用test_case模块里引用的其他模块(init.py)

文件目录
test_case
    init.py
    all_case
    	init.py
    	yp-exp.py
     
#错误例子
在yp-exp.py
import os 
import sys
basedir2=os.path.dirname(os.path.dirname(__file__))
from test_case import *

#会报错 ModuleNotFoundError: No module named ‘test_case’–找不到test_case的包
#打印basedir2的路径是 ***\test_case,这妥妥的不是项目路径,所以找不到

#正确例子
在yp-exp.py
import os 
import sys
basedir2 = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
sys.path.append(basedir2)

#打印basedir2,这才是项目的根路径,才能找到test_case模块

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值