IronPython

З Вікіпедії, вільної енциклопедії

IronPython — одна з основних реалізацій мови Python, призначена для платформи Microsoft .NET або Mono. Повністю написаний на C#, і є транслятором компілюючого типу.

Коротка інформація Тип, Розробник ...
IronPython
Thumb
Thumb
ТипІнтерпретатор мови програмування Python
РозробникJim Hugunin, Dino Viehland
Перший випуск5 вересня, 2006
Стабільний випуск2.7.5 (6 грудня, 2014)
Платформа.NET Framework, Mono
Мова програмуванняC Sharp і Python 
ЛіцензіяApache License version 2.0[1]
Репозиторійgithub.com/IronLanguages/ironpython3
Вебсайтironpython.net
Закрити

В IronPython можна використовувати типи .NET. Також можна з .NET коду використовувати IronPython код, з застосуванням хостингу IronPython системи або попередньої збірки IronPython коду.

Версії

  • Версія 2.0 вийшла 10 грудня 2008 і оновлена до 2.0.3 23 жовтня 2009.[2] IronPython 2.0.3 сумісний з .NET лише до версії 3.5.
  • Версія 2.6 вийшла 11 грудня 2009 і оновлена 12 квітня 2010.[3] IronPython версії 2.6.1 сумісний тільки з .NET фреймворком 4.0.
  • Версія 2.7 вийшла 11 грудня 2009 і оновлена 12 квітня 2010.[4]
  • Версія 2.7.1 вийшла 21 жовтня 2011.[5]
  • Версія 2.7.2.1 вийшла 13 березня 2012. В цій версії додана підтримка бібліотек для формату ZIP, SQLite, і скомпільованих виконуваних файлів.[6]
  • Версія 2.7.4 вийшла 7 вересня 2013.[7]
  • Версія 2.7.5 вийшла 6 грудня 2014 і в основному відрізнялася від попередньої лише виправленням багів.[8]

Відмінності з CPython

Є деякі відмінності між реалізацією мови програмування Python у CPython та IronPython.[9] Деякі проекти на IronPython не працюють під CPython.[10] З іншого боку, програми на CPython, які залежать від розширень мови, що реалізуються на C (наприклад NumPy) не сумісні з IronPython.[11]

Silverlight

IronPython підтримується на Silverlight. Його можна використати, як скриптовий рушій в браузері, так само, як в JavaScript. Скрипти IronPython передаються, як прості JavaScript-скрипти в <script>-тегах. Після цього можна модифікувати вбудовану розмітку XAML.

Технологія нижче називається Gestalt.

// DLR initiation script.
<script src="http://gestalt.ironpython.net/dlr-latest.js" type="text/javascript"></script>

// Client-side script passed to IronPython and Silverlight.
<script type="text/python">
    window.Alert("Hello from Python")
</script>

Приклади

Цей скрипт використовує .NET фреймворк для виводу простого вікна повідомлення з текстом «Hello World»:

import clr
clr.AddReference("System.Windows.Forms")

from System.Windows.Forms import MessageBox
MessageBox.Show("Hello World")

Простий приклад використання графічного інструменту GTK+ в оточенні IronPython:

#!/usr/bin/env ipy
#-*- coding: UTF-8 -*-

import clr
clr.AddReference('gtk-sharp')
import Gtk

def button_clicked(button, args):
    print('Привіт світе!')

def main():
    Gtk.Application.Init()

    window = Gtk.Window('Вікно вітання')
    window.SetDefaultSize(240, 180)
    window.DeleteEvent += lambda w, a: Gtk.Application.Quit()

    button = Gtk.Button('Натисни мене')
    button.Clicked += button_clicked
    button.Show()

    window.Add(button)
    window.Present()

    Gtk.Application.Run()

if __name__ == '__main__':
    main()

Наступний IronPython скрипт керує об'єктами .NET.

from BookService import BookDictionary
 
booksWrittenByBookerPrizeWinners = [book.Title for book in BookDictionary.GetAllBooks() 
                                    if "Booker Prize" in book.Author.MajorAwards]

Примітки

Див. також

Посилання

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.