疑问
最近写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