8. Oktober 2013 von Christian Imhorst
Mein Artikel Nicht nur für Zombies: Einstieg in IronPython aus freiesMagazin Ausgabe 07/2012 ist mittlerweile ein gutes Jahr alt, und es hat sich seit dem bei IronPython ein bisschen was getan.
Am 07. September 2013 erschien Version 2.7.4 der Sprache, mit der man sich weiter an die in C geschriebene Referenz von Python, CPython, annähert. Wer die neue Version einmal ausprobieren möchte, findet einen Link zum Installer für Windows auf der Homepage — ironpython.net. Unter Linux oder MacOS X ist die Installation ein wenig aufwendiger, da IronPython den .Net-Klon Mono benötigt. Während unter Ubuntu ein
sudo apt-get install ironpython |
sudo apt-get install ironpython
reichen sollte, benötigt man unter Debian zuerst das Mono-Framework,
apt-get install mono-complete |
apt-get install mono-complete
das es für MacOS X als Installationspaket gibt. Anschließend lädt man bei beiden Betriebssystemen das aktuelle IronPython von GitHub herunter und installiert es unter Mono:
git clone https://github.com/IronLanguages/main.git IronLanguages
cd IronLanguages/
xbuild Solutions/IronPython.sln /p:Configuration=Release |
git clone https://github.com/IronLanguages/main.git IronLanguages
cd IronLanguages/
xbuild Solutions/IronPython.sln /p:Configuration=Release
Ich habe allerdings eine Fehlermeldung beim Importieren des OS-Moduls unter Mono bekommen, in der IronPython-Konsole war es
>>> import os
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named os |
>>> import os
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named os
und beim Aufrufen eines Skripts mit ipyw.exe
war es:
~/IronLanguages/bin/Release$ mono ipyw.exe ~/bin/ipyHelloWorlp.py
Traceback (most recent call last):
File "/home/christian/IronLanguages/bin/Release/Lib/site.py", line 62, in <module>
ImportError: No module named osTraceback (most recent call last) |
~/IronLanguages/bin/Release$ mono ipyw.exe ~/bin/ipyHelloWorlp.py
Traceback (most recent call last):
File "/home/christian/IronLanguages/bin/Release/Lib/site.py", line 62, in <module>
ImportError: No module named osTraceback (most recent call last)
Da ich nicht der einzige bin, konnte ich den Fehler durch folgenden Eintrag in meiner ~/.bashrc
beheben:
# IronPython on Mono:
export IRONPYTHONPATH=~/IronLanguages/External.LCA_RESTRICTED/Languages/IronPython/27/Lib:$IRONPYTHONPATH
alias ipy="mono ~/IronLanguages/bin/Release/ipy.exe" |
# IronPython on Mono:
export IRONPYTHONPATH=~/IronLanguages/External.LCA_RESTRICTED/Languages/IronPython/27/Lib:$IRONPYTHONPATH
alias ipy="mono ~/IronLanguages/bin/Release/ipy.exe"
Der Installationspfad von IronPython liegt in meinem Home-Verzeichnis unter ~/IronLanguages
. Das ist vermutlich suboptimal, aber zum Testen geht es. Darunter habe ich noch einen Alias ipy
auf den Aufruf mono ~/IronLanguages/bin/Release/ipy.exe
gesetzt, um mir Tipparbeit zu sparen.
Im August diesen Jahres hat Scott Hanselman im The Hanselminuts Podcast mit Dino Viehland einen Gast, der mehrere Jahre bei Microsoft mit Python gearbeitet hat. Mit seinem Team entwickelte er die Python Tools for Visual Studio. Die Frage ist, warum sollte Microsoft etwas mit Python machen wollen? Weil man mit Python Django-Webseiten erstellen kann, die unter Azure gehostet werden können.