首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在统一游戏中从c#运行python脚本?

在统一游戏中从c#运行python脚本?
EN

Stack Overflow用户
提问于 2020-04-28 14:07:03
回答 2查看 4.5K关注 0票数 1

我试着用一些不错的3d图形来创建尼姆游戏。对于那些不知道,尼姆是一个解决的游戏,这意味着,假设两名球员发挥完美,我们可以知道谁会赢在第一轮。

我想做四种游戏模式:

  1. 两个互相对抗的球员。
  2. 玩家和电脑对打,电脑打得很好。
  3. 计算机与用户用python编写的机器人玩游戏。
  4. 玩家和一个机器人比赛,他在蟒蛇中写到。

我在高中的计算机科学课上学到了这个游戏,我们被赋予了一个练习来编写一个程序来赢得这个游戏的更简单的版本。

这就是为什么我想包括最后两种模式:让学生用python编写他们的机器人,并在我的游戏中进行测试。我觉得会很酷的。

但是,这意味着我需要弄清楚如何从c#脚本中统一运行python脚本。我知道我可以在Process中使用c#来运行外部python脚本,但这需要我知道python可执行文件的位置。

我可以创建一个设置菜单,这样用户就可以在那里设置python的路径,但我不喜欢用户必须处理路径设置的事实。

我了解到,在windows上,我可以下载一个包含python解释器(python.exe)的可嵌入的zip,并将其随游戏一起发布,这样用户甚至不需要在他们的机器上安装python。但是,对于其他平台,特别是linux和mac,我找不到类似的zip。

因此,我的问题是如何统一运行python脚本?是否有一种方法可以同时嵌入windows、mac和linux的python解释器,还是应该为配置python路径和使用进程创建一个设置菜单?如果有人能给我一个关于如何统一使用python的想法,我会非常感激的。

注意:我想在脚本中使用python 3,所以只适用于python 2的解决方案根本帮不了我。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2020-04-28 14:48:36

您可以使用System.Diagnostics.Process.Start并使用它启动cmd

代码语言:javascript
复制
string strCmdText;
strCmdText= "python script.py";
System.Diagnostics.Process.Start("CMD.exe",strCmdText);```
票数 1
EN

Stack Overflow用户

发布于 2020-04-28 14:16:41

只有python 2.7.5,python 3没有功能

Python与团结

但是如果你只想用蟒蛇做机器人,我建议你通过TCP (套接字)或其他方式进行交流.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61482194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档