スクリプトの決まりごと
ここでは『インタラクティブシェルとスクリプトファイル』の中で説明した3行のプログラムのうち、1行目と3行目について解説します。インタラクティブシェルとスクリプトファイルに書いてあるプログラムは次の3行です。
# coding: shift-jis
print "Hello, World!!"
raw_input()
日本語コード
日本人はたいてい日本語を話し、日本語で考えます。アメリカ人だと英語ですね。じゃあコンピュータは?というと人間に見える形にするときに、人間に分かりやすい言語を使用しますが、通常は文字を数字に置き換えて扱います。その文字を数字に置き換えるコードについて説明します。
ASCIIコード
コンピュータが文字を扱う上で基礎となるコードです。コンピュータがアメリカで発達した経緯から、英語圏で扱うために作られたもので、英語のアルファベットの大文字と小文字をサポートしています。全部で256個あります。
あれ?って思いません。私たち日本人が小学校で習う漢字は1000程度です。ということはASCIIコードで日本語を扱おうとしても全然足りません。そこでいろんな人が各々で自分たち用にコードを決めることになります。
EUC-JPコード
UNIXで開発され、使用されているコードです。
shift-jisコード
今のWondowsの前身であるMS-DOSというOS(オペレーション・システム)で使用されていたコード。現在のWindowsは内部ではUTF-16コードで扱っていますが、互換性の問題で何も指定されないときは、テキストファイルをshift-jisとして保存されます。
ISO-2022-JPコード
いわゆるJISコードと言われるものです。インターネットが始まった頃、標準のコードになっていました。でもISO-2022-CN(中国語)、ISO-2022-KR(韓国語)など国ごとに別々のコードが存在するという問題があります。
ユニコード(UTF-8、UTF-16)
ISO-2022-JPの問題も踏まえて、全世界共通のコードを作り上げました。UTF-8は今のインターネットの標準のコードになっています。
スクリプトファイルで使用している日本語コード
ということで一行目"# coding: shift-jis"はIron Pythonに「このスクリプトファイルはshift-jisで書かれていますよ。」って教えています。他にこんな書き方があります。# coding: euc-jp
# coding: iso-2022-jp
# coding: utf-8
他にこの# coding・・・という行は1行か2行目に記載するという決まりがあります。
さて、本当のことをいうと"utf-8"を使って書くほうが、これからの時代に合っていることなのですが、WindowsではまだShift-JISが標準ですので、Shift-JISで私は書いていきますが、自分の好みのコードを使用してかまわないと思います。でもできるだけ統一しておいた方がよいと思います。
追記:<コメント>
1行目と2行目以外で行の頭に"#"をつけるとIron Pythonは行の内容を無視します。
これで、"#"の後は好きなことがかけます。通常プログラマ同士の意思の確認のため、コードの目的やコードを読むためのヒントが書かれており、そういう行をコメントといいます。