【转载】C#调用python文件时出现'module' object has no attribute '_getframe'

这几天这个问题困扰了我很久;
任务需要,环境是在VS13.NET中安装了ironpython,可以调用python代码;
在不引用python第三方模块的时候,C#中调用python(.py文件)经测试是正常的;
但是现在需要调用第三方模块,查了一下解决办法是在.py文件中
import sys
sys.path.append(……) 如图是将python的第三方模块全部添加到环境里了,然后问题来了;



python代码本身经测试也没有问题
在C#窗体中调用代码如下,提源代码



运行是会报错:'module' object has no attribute '_getframe'



查了下python的sys模块,有_getframe



查了下ironpython的sys模块,没有_getframe



也不是很清楚怎么解决,听说有个参数是:-X:Frames要run,如图红框



但是也没有弄成功;
也有听说在interupter options里面加参数,但是也没用,求解决啊!!!!!!!



var options = new Dictionary<string, object>();
options["Frames"] = true;
options["FullFrames"] = true;
ScriptRuntime pyRunTime = Python.CreateRuntime(options);
ScriptScope pyScope = pyRunTime.CreateScope();
dynamic obj = pyRunTime.UseFile("ceshi.py");
如果你不想用FullFrames,把它设成false也可以。            

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值