我想从我的Python文件中获取一个变量并将其写入控制台
这是我尝试过的:
main.py
myVar = "Hello There"
program.cs
using System;
using IronPython.Hosting;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
var py = Python.CreateEngine();
var pythonVariable = py.ExecuteFile("main.py");
Console.WriteLine(pythonVariable);
Console.Read();
}
}
}
我希望输出是“ Hello There”,但我得到了:“ Microsoft.Scripting.Hosting.ScriptScope”
参考方案
您得到的输出暗示您必须寻找的内容。 ExecuteFile
返回一个ScriptScope
,其中包含在已执行的Python代码中定义的所有变量。
为了从中检索特定变量,您需要使用GetVariable
或TryGetVariable
(如果该变量可能不存在于文件中),例如:
using System;
using IronPython.Hosting;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
var py = Python.CreateEngine();
var pythonVariable = py.ExecuteFile("main.py").GetVariable<string>("myVar");
Console.WriteLine(pythonVariable);
Console.Read();
}
}
}
请注意,我使用GetVariable
的通用版本将其立即转换为string
。非通用版本返回一个dynamic
对象,根据您打算如何使用该变量来选择所需的对象
我正在尝试在Linux OS(CentOS 7)上使用Python-crontab模块我的配置文件如下:{ "ossConfigurationData": { "work1": [ { "cronInterval": "0 0 0 1 1 ?", "attribute&…
Python Pandas导出数据 - python我正在使用python pandas处理一些数据。我已使用以下代码将数据导出到excel文件。writer = pd.ExcelWriter('Data.xlsx'); wrong_data.to_excel(writer,"Names which are wrong", index = False); writer.…
Python sqlite3数据库已锁定 - python我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…
Python:在不更改段落顺序的情况下在文件的每个段落中反向单词? - python我想通过反转text_in.txt文件中的单词来生成text_out.txt文件,如下所示:text_in.txt具有两段,如下所示:Hello world, I am Here. I am eighteen years old. text_out.txt应该是这样的:Here. am I world, Hello old. years eighteen a…
用大写字母拆分字符串,但忽略AAA Python Regex - python我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…