きっかけなんて些細なモンですよ。

NEW GAME!を観ました。プログラミング始めます。(12)

ねねっちが左利きとは知りませんでした。にわかでごめんなさい。

f:id:kirintt:20170907203958p:plain 

今日は練習問題がないのでお勉強感強め。

☟前回の記事 

nagoyanofes.hatenadiary.jp※基本的に、愛知大学の有澤先生がプログラミングの講義で使用しているテキスト「Pythonによるプログラミング入門」に沿って進めています。

Python 2.7.13を使用しています。

 

 

サンプルプログラム

1か月分のカレンダーを表示するプログラム(「Pythonによるプログラミング入門」p. 13)。

f:id:kirintt:20170826201139p:plain

 

今日のキーワード

大域 (global) 変数

関数定義の外で代入された変数を大域変数と呼ぶ。

 

例1)大域変数

f:id:kirintt:20170907193259p:plain

(引用元:Pythonによるプログラミング入門, p. 28)

  • wdayが大域変数。
  • 関数cal0内で使用されている。
  • データを変数に入れるメリットの 1 つは、変数に適切な名前をつける事によって、そこに代入されているデータの性質が分かることにある。

    (引用元:Pythonによるプログラミング入門, p. 29)

  • 例2)ローカル変数

f:id:kirintt:20170907193744p:plain

(引用元:Pythonによるプログラミング入門, p. 29)

  • 上のプログラムにおける"wday"のように、関数内で定義される変数をローカル変数という。
  • ローカル変数は、定義されている関数の中でのみ参照できる。 

    (引用元:Pythonによるプログラミング入門, p. 29) 

  • ローカル変数においても、複数の箇所で利用される可能性はある。
  • 変数の利用箇所を把握しておかなければ、大数変数であれ、ローカル変数であれ、修正時に問題が生じるかもしれない。

例3)変数を使わないプログラム

f:id:kirintt:20170907194758p:plain

(引用元:Pythonによるプログラミング入門, p. 29) 

  • 以上より、変数は極力使わないほうが良いらしい。

 

コメント

コメントはプログラムの処理内容には影響しないが、人がプログラムを読むときにコメントがあるとわかりやすくなるかも。

例1)サンプルプログラムのコメント

f:id:kirintt:20170907195651p:plain

 (引用元:Pythonによるプログラミング入門, p. 29) 

  • サンプルプログラムで書かれていたコメント。
  • #は、以降の文はプログラムに関係ないですよ、ということを意味する(コメントアウト)。
  • 公式配布されている Python のプログラムでは次のようにコメントが入っている。

    f:id:kirintt:20170907195929p:plain

     (引用元:Pythonによるプログラミング入門, p. 30) 

  • ["""]は文字列を表す。
  • 行をまたがって使えるところが[']["]とは異なる。
  • 上のプログラムでは、["""]で挟まれた部分の文章は文字列として定義されているが、プログラムの処理には使用されてない。(コメントとして代用)

 

好ましいプログラムスタイル

プログラムの作成では、首尾一貫した書き方を守ろう、という話。

  •  pythonのプログラムは、インデントによって論理構造が表現される。
  • 範囲を示さなくてはならない命令の後には、コロン (:) が続く。例えば

    f:id:kirintt:20170907202318p:plain

    などである。

    (引用元:Pythonによるプログラミング入門, p. 30) 

     

例)if の書き方

f:id:kirintt:20170907201935p:plain

 (引用元:Pythonによるプログラミング入門, p. 30) 

  •  どちらでもプログラムは動くが、右の書き方をしたほうが良いらしい。
  • プログラムを見やすく、首尾一貫した書き方にするには、コロンで改行し、インデントで範囲を示す書き方に統一すべきである。

    (引用元:Pythonによるプログラミング入門, p. 30) 

 

以上。

ちなみに、pythonを使用しているグーグルでは、その使い方について社内規則を設けているらしい。(Pythonによるプログラミング入門, p. 31 より)

Google Python スタイルガイド — PyGuide - 2.29

 

☟次

nagoyanofes.hatenadiary.jp