Java教程

Windows上遇到错误之No module named ‘_polyiou‘

本文主要是介绍Windows上遇到错误之No module named ‘_polyiou‘,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在Windows上运行代码时遇到这个情况:

https://img1.sycdn.imooc.com/618cf3b70001a3d108350401.jpg

官方给出的解决办法是在Linux操作系统上面的

https://img3.sycdn.imooc.com/618d22ad0001012608670374.jpg

网上很多给出了下面几行代码的解决方式,这种方法我没有试成功,我不知道通过conda安装的swig如何使用

    执行命令:conda install -c anaconda swig

    然后到D:\\×××\\DOTA_devkit目录下面

    执行命令:swig -c++ -python polyiou.i

    下一步执行: python setup.py build_ext --inplace

我在Windows上成功解决这个问题,有以下2个步骤:

  1. 安装swig

  2. 使用下面两条命令编译

    swig -c++ -python polyiou.i

    python setup.py build_ext --inplace

一、Windows上安装swig

①swig官方下载地址:http://www.swig.org/download.html

https://img3.sycdn.imooc.com/618d08980001acec09320341.jpg

②下载解压之后是这样一个文件夹,将其放到你想放到的位置

https://img4.sycdn.imooc.com/618d08df0001c79f06960234.jpg

③然后将其添加到环境变量中

https://img1.sycdn.imooc.com/618d0c2c0001ac2910680582.jpg

④在cmd命令行输入swig -help验证swig是否配置成功,如果提示

'swig' 不是内部或外部命令,也不是可运行的程序

或批处理文件。

说明没有配置成功。

https://img3.sycdn.imooc.com/618d0ebd00018b5010750566.jpg

二、使用两条命令编译

swig -c++ -python polyiou.i

在cmd界面进入需要编译的目录,输入swig -c++ -python polyiou.i

https://img1.sycdn.imooc.com/618d10b30001066a06590137.jpg

没有输出与报错,就表示没有问题

然后接着输入python setup.py build_ext --inplace

不出意外的话,都会报错

https://img1.sycdn.imooc.com/618d11640001fabc10910544.jpg

解决办法如下,找到需要编译的polyiou.cpp文件,右键选择记事本打开

https://img1.sycdn.imooc.com/618d13c00001a5f407640277.jpg

在记事本打开之后选择文件——>另存为

https://img4.sycdn.imooc.com/618d14970001856609320574.jpg

仍然选择原来polyiou.cpp的文件路径,在编码处选择“带有BOM的UTF-8”替换掉原来的polyiou.cpp,然后重新输入python setup.py build_ext --inplace命令编译

https://img1.sycdn.imooc.com/618d159300015e2d10890527.jpg

代码生成完成后,polyiou.cpp的路径下会多出一个文件

https://img3.sycdn.imooc.com/618d199b0001097108550458.jpg

至此,大功告成!




这篇关于Windows上遇到错误之No module named ‘_polyiou‘的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!