初版を読まれている方へ¶
Pythonスタートブックをご愛読いただきありがとうございます。初版の出版は2010年でしたが、いまではPython3が主流になってきています。このページでは、Python2を想定して書かれている初版を、Python3で利用するときの主な注意点をまとめておきます。
割り算の結果が小数になります¶
30ページで2/4が0となるのは、Python2での結果です。Python3では、0.5となります。その他の部分も適宜読み替えていただけると助かります。
文字列とバイト列が区別されるようになりました¶
32ページで、「あいうえお」が日本語では無くなる例がありますが、こちらはPython3では問題無く表示されます。小数のことも含め、Python3はより自然な理解ができるようになっています。
setの出力記述がすこし違っています¶
113ページでsetを扱う際に、画面への出力が以下のようになっています。
>>> print(test_set)
set([1, 2, 3])
これは、Python3では次のように出力されます。
>>> print(test_set)
{1, 2, 3}
ちなみにPython3では、setを定義するために、新しいリテラル(書き方)が導入されました。以下のようにすることで、直接setを作る事が出来ます。
>>> {1, 2, 3}
{1, 2, 3}
raw_input関数がinputになっています¶
148ページで使われているraw_input関数ですが、3.x系ではinput関数に名前が変更されています。
window_width()メソッドに関して¶
180ページのSTEP3、キャンバスの座標系のコードを以下のように変更してください。
>>> kame.getscreen().window_width()
960
>>> kame.getscreen().window_height()
810
同様に、263ページでhit_wall関数を定義している部分も以下のように変更してください。
def hit_wall(self):
xx = self.getscreen().window_width() / 2.0
yy = self.getscreen().window_height() / 2.0
この変更は、Python2.x系を使っている場合もエラーになりません。また、getscreenメソッドについては、268ページに解説があるので、参考にしてください。
reload関数が使えなくなっています¶
205ページと214ページで、モジュールを読み込み直すために組み込み関数reloadを利用していますが、Python3からはすこし面倒になり、以下のようにする必要があります。
>>> import importlib
>>> importlib.reload(my_module)
テキストエディタについて¶
どのテキストエディタを利用するかは難しい問題ですが、Windows、macOS、Linuxとクロスプラットフォームで利用できるエディタを選ぶのが良いと思います。
以下のエディタがおすすめです。Sublime Textはシェアウェアですので、継続利用する場合は、お金を払ってライセンスを購入してください。
(昔の記述)WindowsOS¶
本書では紹介していませんが、デフォルトでPythonのコーディングに対応していて、無償で利用出来るWindows用のテキストエディタとして、 Notepad++ がお薦めです。 Webページは英語ですが、ソフトウェアは日本語にも対応しています。また、 日本語対応強化版 を作ってくださっている方もいるので、便利です。
書籍内で紹介しているEmEditorとGinnieについては、以下の注意点をご覧ください。
付録BのSTEP2で、テキストエディタとしてEmEditorを紹介していますが、バージョンが13になって無償のFree版とProfessional版が同じファイルで配布されるようになっています。ダウンロードは、 こちら からできます。
もう一つ本書で紹介しているエディタはGinnieですが、2016年9月現在、Webページへのリンクが切れてしまっています。