初版を読まれている方へ

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はシェアウェアですので、継続利用する場合は、お金を払ってライセンスを購入してください。

Visual Studio Code

ATOM

Sublime Text3

(昔の記述)WindowsOS

本書では紹介していませんが、デフォルトでPythonのコーディングに対応していて、無償で利用出来るWindows用のテキストエディタとして、 Notepad++ がお薦めです。 Webページは英語ですが、ソフトウェアは日本語にも対応しています。また、 日本語対応強化版 を作ってくださっている方もいるので、便利です。

書籍内で紹介しているEmEditorとGinnieについては、以下の注意点をご覧ください。

付録BのSTEP2で、テキストエディタとしてEmEditorを紹介していますが、バージョンが13になって無償のFree版とProfessional版が同じファイルで配布されるようになっています。ダウンロードは、 こちら からできます。

もう一つ本書で紹介しているエディタはGinnieですが、2016年9月現在、Webページへのリンクが切れてしまっています。