Нужна помощь для преобразования кода из C # в Python - PullRequest
1 голос
/ 12 февраля 2009

Можете ли вы преобразовать этот код из C # в Python для запуска на IronPython?

У меня нет опыта работы с 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);  
    }
}
}

Ответы [ 4 ]

5 голосов
/ 12 февраля 2009

Инстанциация не требует определения типа. Методы, вызываемые одинаково, назначают делегатов напрямую. Предыдущий ответ абсолютно верен, вам понадобится lot больше контекста, чтобы "преобразовать" приложение C # в Python; это больше, чем просто синтаксис.

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
2 голосов
/ 02 июня 2010

Или, если вы действительно ленивы, есть конвертер C # в Python на fusion для разработчиков!

1 голос
/ 12 февраля 2009

Я думаю, что вам больше всего подойдет, если вы посмотрите на следующие ссылки:

http://www.learningpython.com/2006/10/02/ironpython-hello-world-tutorial/ http://msdn.microsoft.com/en-us/magazine/cc300810.aspx

0 голосов
/ 17 ноября 2010

Если у кого-то еще есть этот вопрос, у SharpDevelop есть утилита для конвертации между C # и IronPython, VB.NET или Boo http://community.sharpdevelop.net/blogs/mattward/archive/2009/05/11/ConvertingCSharpVBNetCodeToIronPython.aspx

...