読者です 読者をやめる 読者になる 読者になる

"Ironpython in Action" ch.2 -Introduction to Python- まとめ

Programming Ironpython

きっと、しばらくこのシリーズ。

  • Pythonてすごい言語!
    • Pythonの標準のデータ型とかについての説明(割愛)
  • string型について
    • Python2系以下は、Unicode stringとByte stringの2種類持ってましたが、Ironpythonでは、文字列は全てUnicodeです。
    • まぁ、特に意識しなくてもIronpythonエンジンがUnicode型で解釈しなおしてくれるので特に問題なし。
  • .NetとPythonでのデータ型
    • 基本的に、同じものとして解釈されます。
    • ゆえに、たとえば文字列型に対して、upper(@Python)も、ToUpper(@.Net)も使えます。

こんな感じ

#Pythonと.Netのデータ型は同一
import System
System.String is str

#ゆえに、こんなこともできる
import clr
"Ironpython".ToUpper()

True
'IRONPYTHON'

  • Pythonは基本的にすべて参照型
    • 基本基本。
  • 例外処理
    • .Netの例外は、Pythonでの例外に置換される。
    • 例えば、.NetのMissingMenberExceptionは、PythonAttributeErrorとして捉えられる。
    • 詳しくどう置換されるかは、この辺とかを見るといいらしいよ!
  • Pythonスタンダートライブラリ
    • Cで書かれた標準ライブラリは残念ながらIronpythonではそのまま動きません。
    • でも、cStringIOとかいくらかの著名なライブラリはIronpythonチームがC#で書き直してくれたので使えるそうです。
    • IroncladというPythonのC拡張全てを、C#で書き直そうとしているオープンソースプロジェクトもあります。