如何使用 C# 在 python 中将字符串作为命令行参数传递
How to pass string as command line argument in python using C#
我尝试将字符串作为命令行参数发送到我的 python 脚本,如下所示:
var cmdToBeExecute = Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location) + "\myScript.py";
var start = new ProcessStartInfo
{
FileName = "C:\Python27\python.exe",
Arguments = string.Format("{0} {1}", cmdToBeExecute, "Rahul done good"),
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true
};
我正在尝试读取命令行参数并将其显示在 python 中:
import sys
print sys.argv[1]
但是,我只得到第一个单词 "Rahul" 作为输出。
请帮助我将字符串作为命令参数参数发送到我的 python 脚本。
如果字符串包含空格,您应该将其传递到双引号内:
Arguments = string.Format("{0} {1}", cmdToBeExecute, "\"Rahul done good\""),
这不是特定于 C#;即使您从命令行 运行 也应该使用引号:
python myscript.py "Rahul done good"
我尝试将字符串作为命令行参数发送到我的 python 脚本,如下所示:
var cmdToBeExecute = Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location) + "\myScript.py";
var start = new ProcessStartInfo
{
FileName = "C:\Python27\python.exe",
Arguments = string.Format("{0} {1}", cmdToBeExecute, "Rahul done good"),
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true
};
我正在尝试读取命令行参数并将其显示在 python 中:
import sys
print sys.argv[1]
但是,我只得到第一个单词 "Rahul" 作为输出。 请帮助我将字符串作为命令参数参数发送到我的 python 脚本。
如果字符串包含空格,您应该将其传递到双引号内:
Arguments = string.Format("{0} {1}", cmdToBeExecute, "\"Rahul done good\""),
这不是特定于 C#;即使您从命令行 运行 也应该使用引号:
python myscript.py "Rahul done good"