LoginSignup
0
0

More than 3 years have passed since last update.

良書『入門 Python3』、説明に失敗しているところN選(N=3)。

Last updated at Posted at 2020-07-18

概要

以下の書籍は、良書だと思う。
Pythonの勉強で最初に読んだ本です。
この本が、良書だったので、Pythonに馴染めて(いまに至る)気がする。感謝。

 「入門 Python3」オライリー・ジャパン(2017年2月3日 初版第6刷発行)

ここでは、
ちょっと、説明に失敗していると思うところがあるので、それを記載する。

  • 失敗1 (空文字の説明)
  • 失敗2 (__main__ の説明)
  • 失敗3 (ダックタイピングの説明)

結構忘れたが、気づいたときに、この記事に追加したいと思う。

※別途、新しい版があるなら、それも、覗いてみたいと思う。

失敗1 (空文字の説明)

抜粋引用

以下、該当書籍引用

 なぜ、空文字列が必要なのだろうか。ほかの文字列から新しい文字列を組み立てたいときには、まず白紙のノートが必要なのだ。

>>> bottles = 99
>>> base = ''
>>> base += 'current inventory: ' #在庫
>>> base += str(bottles)
>>> base
'current inventory: 99'

説明失敗の内容

上記の例の場合、空文字がなくてもいいと思う。
以下↓。

>>> bottles = 99
>>> base = 'current inventory: ' #在庫
>>> base += str(bottles)
>>> base
'current inventory: 99'

説明の改善案

説明したいことは、わからないではないが。。。
(改善案は、省略します。)

失敗2 (__main__ の説明)

抜粋引用

以下、該当書籍引用

 ・・・メインプログラムには、__main__という特別な名前が与えられている。・・・

説明失敗の内容

上記が最もよく利用される

if __name__ == "__main__":

という使い方の説明がない。
(確か、なかった。索引にないだけかもしれないが、、、その場合は、索引が失敗。)

説明の改善案

どこかに説明を入れる。

失敗3 (ダックタイピングの説明)

抜粋引用

以下、該当書籍引用

 ・・・Pythonはそこからさらに少し進んで、who()、says()メソッドを持ちさえすればどのようなオブジェクトであっても(つまり、継承などを利用しなくても)、共通のインターフェースを持つオブジェクトとして扱うことができる。・・・

 

・・・実行してみよう。そのうちひとつ(brook)は、ほかのものとは全く無関係である。

説明失敗の内容

以下の点で失敗している。

  • 例としているコードが長い。(長すぎる)。
  • 「継承などを利用しなくても」とか、「無関係」をもっと強調すべき。

説明の改善案

もっと、短いコードで説明する。

まとめ

単に、良書により馴染むために、(いいがかり?みたいな)記事を書いてみました。
また、何か、見つけたら追記します、これまでに気づいている範囲でも、確か、何個かあった気がします。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0