Важно помнить, что для команды в командной строке кавычки являются требованием shell , а не python.Таким образом, когда вы выполняете ту же самую командную строку из чего-то другого, кроме оболочки, вам нужно использовать соответствующие кавычки (или их вообще нет).
В случае робота, кавычка - это пробел между аргументами.Другими словами, вам не нужно использовать одинарные кавычки, чтобы сообщить python, где команда начинается и заканчивается, как вы делаете в оболочке, для этого нужны два или более пробела.
В вашемВ этом случае команда для запуска из Start Process
имеет значение «python», а аргументы этой команды - «-c», сценарий в целом и «Test123».Каждый из них должен использовать робота «цитирование» - пробелы вокруг каждого.
Наконец, аргументы ключевого слова для ключевого слова должны идти после команды, которую нужно выполнить, и после аргументов, не являющихся ключевыми словами.
Следующее должно работать.Я использовал несколько строк, чтобы было легче увидеть отдельные аргументы
${result}= Start Process
... python
... -c
... import MyPythonScript; MyPythonScript.MyFunction()
... Test123
... cwd=${ROOT}/PythonLibraries
Другой способ написать это будет так:
${result}= Start Process
... python -c import MyPythonScript; MyPythonScript.MyFunction() Test123
... cwd=${ROOT}/PythonLibraries