Python call
Код Python как внешняя shell-команда
Самый простой способ запускать код Python через shell-команду и её аргументы с помощью std::process::Command.
Запуск файла с Python-скриптом
Файл pyhello.py кладём в корень проекта или в папку python. Тест-код:
if __name__ == "__main__":
print("Hello from python file code!")Запускаем:
use std::process::Command;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let output = Command::new("python3").arg("./python/pyhello.py").output()?;
println!("Output: {}", String::from_utf8_lossy(&output.stdout));
Ok(()) }Запуск inline Python-кода
Определяем код Python как строку и запускаем:
let python_code = r#"
import sys
print(f"Python version: {sys.version}")
print("Hello from inline Python!")
"#;
let output = Command::new("python3")
.arg("-c")
.arg(python_code)
.output()?;
println!("{}", String::from_utf8_lossy(&output.stdout));
Ok(())