>source

파이썬 스크립트와 같은 디렉토리에있는 파일을 읽는 C #에서 파이썬 스크립트를 실행하려고합니다.

with open('./input.txt') as f:
    print(f.read().strip())

다음은 C # 코드의 최소 작동 예입니다.

var pi = new ProcessStartInfo
{
    FileName = @"path-to-python.exe",
    RedirectStandardOutput = true,
    RedirectStandardError = true,
    Arguments = @"path-to-script.py",
};
using (var p = Process.Start(pi))
using (var reader = p.StandardOutput)
{
    var err = p.StandardError.ReadToEnd();
    var res = reader.ReadToEnd();
    Console.WriteLine(err);
    Console.WriteLine(res);
}

지금까지 시도했습니다 :

  1. "path-to-python.exe"인 c #에 제공하는 것과 동일한 인터프리터로 cmd에서 python 스크립트를 실행하면 작동합니다.
  2. 파이썬 스크립트에서 전체 절대 경로를 지정하고 c #에서 실행하면 작동합니다.

내가 계속받는 오류 메시지는 :

[Errno 2] No such file or directory: './input.txt'


  • 답변 # 1

    print(os.getcwd())
    
    

    이 질문에 실제로 답합니다

    Project\bin\Debug\netcoreapp2.2
    
    

    분명히 C #은 파이썬 파일을 현재 위치가 아니라 디버그에서 실행합니다.

관련 자료

  • 이전 wpf - 다른 시스템에서 MenuItems의 아이콘 크기가 변경됨
  • 다음 reactjs - 물결표 ~ 문자 만들기 반응 앱 빌드 파일