まんが版『こんにちはPython』のエラー情報ページです。
刊行後、発見されたミスと対応法を、こちらに掲載させていただきました。
Twitterなどでご指摘くださった皆さま、ありがとうございました。
おかげさまで第2刷の発売が決定しました。5月19日以前のエラー部分については、増刷時に修正させていただきました(背景がグレーの部分)。それ以降に発見されたものについては、次の増刷時に修正させていただきます。(2020/05/26)
おかげさまで第3刷が発売になりました。2刷までに発見されたミスについては、全て修正されています。なお、2刷以前のミスについては、このエラーページでご確認ください。(2020/08/28)
エラーの追記をしました(P130、P134)。次回の増刷で訂正されます。(2021/01/10)
〈エラー情報〉
- P11 2段目、一番右のセリフ「手まわしがいいね」は一平太のセリフ、または、あらしのセリフのまま「手まわしがいいだろ?」に訂正させていただきます。(2020年5月20日追記)
- P14 3段目、プログラムリスト中の「HTML」のルビは「エイチティエムレル」ではなく「エイチティエムエル」の間違いでした。(2020年5月19日追記)
- P60 1段目、左から3つ目のさとるが話しているセリフ「3でも5でも/割り切れるなら~」は、あらしのセリフです。(2020年5月6日追記)
- P60 2段目右のコマ、あらしのセリフの3行目「いけなんだよね?」は「いけないんだよね?」の誤りです。(2020年5月31日追記)
- P62 1段目、さとるのセリフ内:「Invarid syntax」は「Invalid syntax」の間違いです。(2020年5月6日追記)
- P66 1段目のプログラム:「for i in (5):」は「for i in range(5):」の間違いです。(2020年5月5日追記)
- P69 1段目左の一平太のセリフ:「×右にずれてる→◎左にずれてる」(図のクリックで拡大)(2020年5月5日追記)
- P72 1段目、C++とJavaのプログラムを以下のように変更いたします。(2020年5月21日追記)
「return(0);」を追加しました。(2020年5月22日追記)
〈C++の場合〉(赤字の部分を加えました)
#include <stdio.h>
int main(void){
for (int i = 1; i < 51; i++)
printf("%d\n",i);
return (0);
}
〈C++の場合〉(別バージョン)
#include <iostream>
using namespace std;
int main()
{
for (int i = 1; i < 51; i++)
cout << i << endl;
}
〈Javaの場合〉(「throws Exception」を除去しました)
public class Main {
public static void main(String[] args) {
for (int i=1; i<51; i++){
System.out.println(i);
}
}
}
- P73 1段目、右のセリフ内:「少しむずかしかも」は「少しむずかしいかも」の間違いです。(2020年5月6日追記)
- P75 最下段のべき乗のプログラム内「print(1)」は「print(a)」の間違いです。(2020年5月12日追記)
- P82 3段目、2つめのあらしのセリフ内:「3の倍数でなかった」は「5の倍数でなかった」の間違いです。(2020年5月6日追記)
- P114 2段目、最初のさとるのセリフ内:「アクティブティ図」は「アクティビティ図」の間違いです。(2020年5月6日追記)
- P130 2段目、さとるのセリフ内:「ここでいちど/いちどまとめて」は「ここでいちど/まとめて」の間違いです。(2020年5月6日追記)
- P130 2段目、プログラム「## 強引な画面クリア」の2行下は「print ("\r")」になっていますが、P135 1段目のリスト中では「print (\n)」になっています。Windowsでは前者が1行置き、後者が密着状態で改行されますが、機能としては、どちらでも問題ありません。
ちなみに「\n」は「CR(Carriage Return:キャリッジ・リターン)=カーソルを行の先頭に戻す」コード、「\r」は「LF(Line Feed:ライン・フィード)=カーソルを次の行に送る」コードです。Windows、Mac、UNIXなどのOSによって、改行の方法が異なります。参考プログラムを掲載しましたので、試してみてください(p130_test.py)(2020年5月20日追記)
- P130 2段目、プログラム「## 表示するメッセージを定義」の下にある「pc_win = = "あなたの負け"」は「you_lose = "あなたの負け"」の間違いです。(2021年1月10日追記)
- P130 2段目、プログラム「## 表示するメッセージを定義」の下にある「draw = "あいこ"」は「hikiwake = "あいこ"」の間違いです。(2020年5月8日追記)
- P134 1段目、プログラム「# 勝ち・負け・あいこの回数を足す」の下にある「if hantei == pc_win:」は「if hantei == you_lose」の間違いです。(2021年1月10日追記)
- P156 3段目のグラフ。ボールの行先が右下になっていますが、これは右上の間違いです。(2020年5月14日追記)
- P158 3段目のプログラム。「global」以下の1行は不要です。ここはボールを描くだけで、変数を外に持ち出す必要はありませんので。(2020年5月5日追記)
- P170プログラムリストの下から2行目、P174・3段目のプログラムリスト5行目、P186プログラムリストの下から9行目にある「if is_gameover: return」という命令の意味が記されていませんでした。これは「もしis_gameoverがTrue(真)ならば、元いた場所にもどる」の意味で、この命令のある関数「move_ball():」を呼び出した関数「game_loop():」にもどります。(2020年5月25日追記)
- P174 1段目左の一平太のセリフ中、3行目の「という命令を使うのか」は「という命令をまた使うのか」に訂正させていただきます。(2020年5月20日追記)
- P176 2段目左の一平太のセリフ中、3行目先頭の「Point」は「point」(全て小文字)に訂正させていただきます。(2020年5月31日追記)
- P187右列9行目の「if event.num == 1:」は、P183の1段目に合わせて「if event.num == 1 and is_gameover:」とさせていだきます。(2020年5月20日追記)
〈改造案など〉
「スカッシュゲーム」で空振りをしたとき、「ブー」というエラー音の後にボールが「カクン」と動くのが気になるという意見がTwitterでありました。
そこで次のように改良案を提示させていただきました。
- 図のようにサウンド指定の2行後からの4行を前に移動(画像拡大)。
- サウンドの長さを短くする。この際、音も少し高くする。
これで「カクン」という感じは、かなり解消されるかと思います。
改良版スカッシュゲーム(squash_beep_revised.py)
〈ダウンロードしてください〉