Запуск функции c # из python (записная книжка jupyter)

#c# #jupyter-notebook #python.net

#c# #jupyter-notebook #python.net

Вопрос:

У меня есть этот файл chello.cs

 using System;

namespace HelloWorldApp {
 
    class Geeks {
  
        static void Main(string[] args) { 
              
            // statement 
            // printing Hello World! 
            Console.WriteLine("Hello World!"); 
              
            // To prevents the screen from  
            // running and closing quickly 
            Console.ReadKey(); 
        } 
    } 
} 
  

Я хочу вызвать ее из python в jupyter notebook.
Я использую pythonnet и пытаюсь сделать что-то вроде этого

 import clr

clr.AddReference(r'chello')

from HelloWorldApp import Geeks

my = Geeks()

my.Main()
  

Но это не сработает, это показывает ошибку:

 FileNotFoundException: Unable to find assembly 'chello'.
   at Python.Runtime.CLRModule.AddReference(String name)
  

Ответ №1:

Zeroth, просто чтобы уточнить, вы действительно компилировали C #?

Во-первых, имя сборки, вероятно, chello.exe , учитывая, что в нем есть Главное.

Во-вторых, в зависимости от вашей файловой системы, вам нужно либо добавить каталог в переменную среды PATH, либо передать полный путь AddReference .