標準モジュールを使えるようにしてみよう
書籍『Iron Pythonの世界』が出版されたころは、まだPythonとIron Pythonの互換性がまだまだで、Pythonの標準モジュールと同様のものがなかなか無かったんですが、今は大分標準モジュールで使えるものが増えてきています。IronPythonのバージョンもこのホームページを作り始めた時はver.1.1.1でしたが今(2010年2月6日時点)はver.2.6になっており、ちゃんと"msiファイル"が準備されています。
そのファイルをダウンロードさせて、installするとPythonのように使える標準関数がグーンと増えます。
やってみましょう。
msiファイルでIron Pythonのインストール
まず今まで使っていたIron Pythonを消去しましょう。簡単です。Iron Pythonを保存しているフォルダを"ごみ箱"に捨てます。
次に入手しましょう。次のURLからダウンロードできます。
・http://www.codeplex.com/IronPython
上記のリンクをクリックしてWebページを開き、[ Recommended Download]欄のmsiファイル(例えばIronPython-2.6.msi)をダウンロードします。
ライセンスの確認が表示されるので(よければ)[I Agree]ボタンをクリックして承認し、適当な場所にダウンロードします。
ダウンロードしたmsiファイルをクリックして、指示に従えばインストール終了です。
通常は"C:\Program Files\IronPython 2.6"の中に"ipy.exe"などがあります。
pyファイルを関連付けることも忘れず行いましょう。
標準モジュールを見てみる。
どんな標準モジュールがあるか見てみましょう。Iron Pythonを保存しているフォルダの中にある"Lib"を開いてみてください。そのフォルダの中にあるpyファイルがモジュールになります。ちなみにver.2.6では185個あり、次のものがありました。| abc.py | aifc.py | anydbm.py |
| asynchat.py | asyncore.py | atexit.py |
| audiodev.py | base64.py | BaseHTTPServer.py |
| Bastion.py | bdb.py | binhex.py |
| bisect.py | calendar.py | cgi.py |
| CGIHTTPServer.py | cgitb.py | chunk.py |
| cmd.py | code.py | codecs.py |
| codeop.py | collections.py | colorsys.py |
| commands.py | compileall.py | ConfigParser.py |
| contextlib.py | Cookie.py | cookielib.py |
| copy.py | decimal.py | difflib.py |
| dircache.py | dis.py | doctest.py |
| DocXMLRPCServer.py | dumbdbm.py | dummy_thread.py |
| dummy_threading.py | filecmp.py | fileinput.py |
| fnmatch.py | formatter.py | fpformat.py |
| fractions.py | ftplib.py | functools.py |
| genericpath.py | getopt.py | getpass.py |
| gettext.py | glob.py | hashlib.py |
| heapq.py | hmac.py | htmlentitydefs.py |
| htmllib.py | HTMLParser.py | httplib.py |
| ihooks.py | imaplib.py | imghdr.py |
| imputil.py | inspect.py | io.py |
| keyword.py | linecache.py | locale.py |
| macpath.py | macurl2path.py | mailbox.py |
| mailcap.py | markupbase.py | md5.py |
| mhlib.py | mimetools.py | mimetypes.py |
| MimeWriter.py | mimify.py | modulefinder.py |
| multifile.py | mutex.py | netrc.py |
| new.py | nntplib.py | ntpath.py |
| nturl2path.py | numbers.py | opcode.py |
| optparse.py | os.py | os2emxpath.py |
| pdb.py | pickle.py | pickletools.py |
| pipes.py | pkgutil.py | platform.py |
| plistlib.py | popen2.py | poplib.py |
| posixfile.py | posixpath.py | pprint.py |
| profile.py | pstats.py | pyclbr.py |
| pydoc.py | pydoc_topics.py | py_compile.py |
| Queue.py | quopri.py | random.py |
| repr.py | rexec.py | rfc822.py |
| rlcompleter.py | robotparser.py | runpy.py |
| sched.py | sets.py | sgmllib.py |
| sha.py | shelve.py | shlex.py |
| shutil.py | SimpleHTTPServer.py | SimpleXMLRPCServer.py |
| site.py | smtpd.py | smtplib.py |
| sndhdr.py | SocketServer.py | sre_compile.py |
| sre_constants.py | sre_parse.py | stat.py |
| statvfs.py | string.py | StringIO.py |
| stringold.py | struct.py | sunau.py |
| sunaudio.py | symbol.py | tabnanny.py |
| tarfile.py | telnetlib.py | tempfile.py |
| textwrap.py | this.py | threading.py |
| timeit.py | toaiff.py | token.py |
| tokenize.py | trace.py | traceback.py |
| types.py | unittest.py | urllib.py |
| urllib2.py | urlparse.py | user.py |
| UserDict.py | UserList.py | UserString.py |
| uu.py | uuid.py | warnings.py |
| wave.py | weakref.py | whichdb.py |
| xdrlib.py | xmllib.py | xmlrpclib.py |
| zipfile.py | _abcoll.py | _LWPCookieJar.py |
| _MozillaCookieJar.py | _strptime.py | _threading_local.py |
| __future__.py | __phello__.foo.py |
ここで標準モジュールの説明はここで終わります。
各々の標準モジュールの説明をしていってもいいんですが、折角"Iron Python"を使っているので、標準モジュールを使ってやることを、これから.net frameworkを使ってやっていこうと思います。