Python の不思議

RaspberryPiで遊ぶにはPythonを理解する必要があるので、先日「みんなのRaspberryPi入門 第4版」を購入した事を書きましたが、その本のPythonの部分をちまちま読んでます。

 

Pythonだとこれを使って遊べます


f:id:osadamao:20171228000524j:plain


私は今まで CやJavaなどを経験してきましたけど Python はそれらとは異質な感じがします。

 

何を異質に思うかというと!


違和感その1 カッコの付け方が不思議。

例えば if 文だと、if 文の条件に見合う処理文が複数行ある場合、括弧で閉じるような事が多かったですがPythonは違います!

字下げで段落を表現します\(^o^)/信じられない。

 

Cだと

if (a==0) {

  0のときの処理1;

  0のときの処理2;

  0のときの処理3;

}

通常処理;

 

こんな感じですがPythonだと

if (a==0):

  0のときの処理1

  0のときの処理2

  0のときの処理3

通常処理

 

こんな感じです。

字下げが無くなったところでif文の処理群の終わりを認識します。(^o^)

 

 

違和感その2 ループの中に意味不明のelseがある!

ループから抜け出す為にbreakを使うのは良くありますが、elseってなんや?

ちょっと下のサンプル見てください。


for a in range(10,15,2):
 if a == 13:
  break

    prinr (a)

    else:
  print('else')

 

aを10、12、14と更新しながらaを表示するループ処理なんですけど、このelseの意味は??不思議でしょ〜

サンプルがあまり良くなかったですけど、breakなどで無理やりループを出た場合はelseは通らないんですが、ループを最後まで回った時だけ最後にelseの中を通ります! 不思議やー