brilliant pei 2023-03-14 14:15 采纳率: 100%
浏览 24
已结题

如何在Ubuntu下解决import_module报错

在Python2.7下的importlib文件夹下Init.py,报错,无法只用名字来导入模块,但是在翻看代码时候发现如果遇见非异常情况是路径,不理解从哪个角度去解决这个问题

img

  • 写回答

3条回答 默认 最新

  • MarkHan_ 2023-03-14 14:47
    关注

    该回答引用GPTᴼᴾᴱᴺᴬᴵ
    在Python 2.7下使用importlib.import_module导入模块时,如果传入的参数是文件名而不是模块名,就会报ImportError: Import by filename is not supported.的错误。这个问题可以通过以下两种方式解决:

    1. 修改代码中的参数:根据报错信息可以看出,这个问题出现在Ryu项目的代码中,具体是在ryu/utils.py中的import_module函数中出现的。因此可以在这个函数中将传入的参数改为模块名而不是文件名,这样就可以避免这个错误。

    2. 升级Python版本:Python 2.7已经停止维护,因此如果可能的话,建议升级到Python 3.x版本。在Python 3.x中,import_module已经支持通过文件名导入模块了,因此不会出现这个问题。

    具体操作方法可以参考以下步骤:

    1. 修改代码:打开ryu/utils.py文件,找到import_module函数,将传入的参数改为模块名,保存文件。

    2. 升级Python版本:使用命令sudo apt-get update && sudo apt-get upgrade来更新系统和软件包。如果系统中已经安装了Python 3.x,可以使用命令python3来运行Python脚本。如果系统中没有安装Python 3.x,可以使用以下命令安装:

    sudo apt-get install python3

    sudo apt-get install python3-pip

    这样就可以使用Python 3.x来运行脚本了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月10日
  • 已采纳回答 4月2日
  • 创建了问题 3月14日

悬赏问题

  • ¥15 vhdl+MODELSIM
  • ¥20 simulink中怎么使用solve函数?
  • ¥30 dspbuilder中使用signalcompiler时报错Error during compilation: Fitter failed,求解决办法
  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题