Python 在命令行中的import 模块找不到的问题

日前在创建python工程时遇到如下问题

1 在eclipse环境下的pydev插件安装后,能够正常以python run运行整个工程

2 切换到cmd下,直接运行start.py 一直报 ImportError: No module named xxx

这个找不到的模块是start文件的次级目录当中的文件

首先根据网上的说明,怀疑是sys.path没有正确添加

但是无论是start头文件中sys.append,还是直接在PYTHONPATH中添加内容,均无法修复此问题

从打印情况看 当前工程目录已经添加到path路径中


最终的原因是层级目录写错

比如 start.py 在 a.b 目录下

而需要import的文件在a.b.c目录下

此时在start中写的是

from a.b.c.ClassA import ClassA

实际应该改成 from c.ClassA 才能通过检查


这样看来的话 实际运行python时受到了文件存放路径的影响,而不受文件所在工程的起始路径影响

因此import时要参考待yimport文件相对 start的目录地址

一个更保险的做法是把start文件放到整个工程的根目录下,这样引用其他文件 就能保证以全路径引用


更详尽的解释,找到了这篇文档,惠存

http://blog.csdn.net/sean_abc/article/details/20621417


http://blog.csdn.net/hansel/article/details/8975663


  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
命令行执行 Python 脚本时出现不到模块问题,可能是因为 Python 解释器无法到该模块的路径。你可以尝试以下解决方法: 1. 确认模块是否已经安装:在命令行输入 `pip list`,查看已安装的 Python 模块列表,确认你需要的模块是否已经安装。 2. 如果模块未安装,可以使用 `pip install 模块名` 命令来安装。例如,如果你需要安装 `requests` 模块,可以执行命令 `pip install requests`。 3. 如果模块已经安装但仍然提示不到模块,可能是模块的路径未正确设置。你可以尝试以下方法来解决: - 使用绝对路径导入模块:在脚本使用绝对路径导入模块,例如 `import sys; sys.path.append('模块路径')`,将模块路径添加到 Python 解释器的搜索路径。 - 设置 PYTHONPATH 环境变量:在命令行执行 `set PYTHONPATH=模块路径`,将模块路径添加到 PYTHONPATH 环境变量。 - 使用虚拟环境:如果你在虚拟环境工作,确保在正确的虚拟环境执行脚本。使用虚拟环境可以隔离不同项目的依赖关系。 - 检查系统是否存在多个 Python 版本:有时会存在多个 Python 版本共存的情况,确保你使用的是正确的 Python 解释器来执行脚本。 - 检查脚本模块导入语句:确保在脚本使用正确的模块导入语句,例如 `import 模块名`。 如果以上方法仍然无法解决问题,请提供具体的错误提示信息和你遇到问题的代码,以便我们更好地帮助你解决。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值