c#调用python文件 -凯发k8官方网
最近在工作中需要(呵呵)用c#调用python文件,所使用的工具是ironpython
由于对c#语言不熟悉,所以这篇文章里就不探讨c#语言相关问题。
- 准备工作
下载安装ironpython,地址:http://ironpython.net/download/
下载安装vs,推荐2015之后(我是下载的2017),地址:https://www.visualstudio.com/zh-hans/downloads/
配置过程我就不说了,详细教程在这里
遇到的问题及注意事项
1.ironpython只支持python2,不支持python3(这点很坑,python已经说明python2将不再更新维护,希望大家都去用python3,但是ironpython竟然只支持python2-_-!!!),所以只好去下载了python2,其中也遇到了一些问题,在这
2.安装了python2后,原来基于python3的代码就需要修改(还好改动不大,就只需要把print后的小括号去掉就可以)
3.在调用一些python库时,一些库确实可以用之前安装教程中的方法导入进来(指定路径),但是也有一些库不行,比如我这次遇到的jieba库,jieba库上说明的是同时支持python2和python3,但是我在python中运行时,正常,但是c#一调用就会抛出importerror: cannot import name _remove_dead_weakref
这个错误,在网上怎么搜索也找不到切实可行的修改方案,只好换一个库,换成了thulac库(这个也出现了一些小问题,在这),结果再次抛出
importerror: cannot import ‘,’(具体错误信息忘了,大意就是导入过程中有个‘,’不知道什么鬼)
真是心累,没办法,去 围城 外边下载了smallseg这个库(出不去的话去这里),苍天啊,大地啊,终于成功了,啥也不说了。。。
4.这点主要是提醒下在做c#调用python的同僚们,一定要注意,如果修改了库,一定要先运行能出来正确结果才是成功的,而不是只要没提示错误就是修改成功了,切记!(我就是因为卡在一个奇怪的错误处,半天没反应过来,python运行正常,不提示错误,但是没有输出结果,结果在c#调用时提示了错误,都是泪啊)
最后说下现在的情况,代码没有问题了,导入也正常了,就是c#中的从form的box中读取到的输入信息是string[]类型的,而我的python代码的输入较为复杂,是一个list里包含一个list和一段string类型,现在在解决这个问题,感觉自己要废掉了,对c#完全不熟悉啊,哎
总结
以上是凯发k8官方网为你收集整理的c#调用python文件的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: