python导包路径和当前路径

python导包路径和当前路径

疑问

最近写python项目的时候,遇见了一个问题,由此产生了一些疑问。

1.为什么在 pycharm 中右键run单元测试是正常的?但还是在终端运行就出现了错误?

2.Pycharm 中全局项目主文件运行正常,但是单个文件单独运行时出现错误:ModuleNotFoundError: No module named

3.单个文件运行正常,但是其中一直在导包下面会有红横线,该如何消除?

回答

解决问题1.主程序的目录
主程序的路径,可看出当前程序通过右键run起来路径是主run.py文件所在的父目录。此时终端运行时的目录必须定位到run.py所在的目录下方可正常运行。
在这里插入图片描述
在这里插入图片描述
解决问题2.全局运行正确,但是单个文件运行时导包错误
在这里插入图片描述
解决方法.
在当前目录下的sys加入与导包那句话相匹配的文件目录位置。采用相对或者绝对路径都可以。此时相当于sys.path加入了与之前运行主run.py文件一样的路径,因此不会出现报错,但是可以发现导包那句话的横线依旧存在,此时该怎么解决呢,也就是问题三.
在这里插入图片描述
在这里插入图片描述
解决问题3.在python解释器的环境里面加入和主run.py文件相同的路径进去,此时可发现红线消失,即使不添加如问题2的解决方法,也依然可以正常运行。
在这里插入图片描述在这里插入图片描述

总结

其实总结下来我觉得应该是python运行路径的问题,找到对应文件的对应运行路径应该就可以解决问题。

参考:
https://segmentfault.com/a/1190000041131903
https://blog.youkuaiyun.com/qq_29414125/article/details/119464942

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值