Search code examples
c#.netpythonironpython

How to convert my code from C# to Python?


How can I convert this code from C# to Python to be run on IronPython?

I don't have any experience with Python.

using System;
using Baz;

namespace ConsoleApplication
{
  class Program
  {
    static void Main()
    {
        Portal foo = new Portal("Foo"); 
        Agent bar = new Agent("Bar");

        foo.Connect("127.0.0.1", 1234); 
        foo.Add(bar);

        bar.Ready += new Agent.ReadyHandler(bar_Ready);               
    }

    static void bar_Ready(object sender, string msg)
    {    
       Console.WriteLine(msg.body);  
    }
}
}

Solution

  • Instantiation doesn't require a type definition. Methods called the same, assign delegates directly. The previous answer is absolutely right, you'll need a lot more context in order to "convert" a C# application to Python; it's more than just syntax.

    foo = Portal("Foo")
    
    bar = Agent("bar")
    
    foo.Connect("ip", 1234)
    
    foo.Add(bar)
    
    bar.Ready = bar_Ready
    
    def bar_Ready(sender, msg):
    
        print msg.body