「Python」の特徴(C、C++と比較して):ゼロからのPython入門講座を体験して
機械学習をはじめるために、Pythonに入門しました。
その際に参考にしたのが、東大 松尾研が一般公開している「人工知能・深層学習を学ぶためのロードマップ」。
このなかで紹介されていたPythonジャパンの「ゼロからのPython入門講座」が分かりやすい!
Pythonをこれから始める人にはぜひともオススメの教材なので、以下のnoteの記事ですこし紹介しました。
今回の記事では、ぼくがC言語とC++言語を使っているので、それらではお目にかかれない、「Pythonの特徴」について、気づいたことをまとめます。
一般的なこと
・Pythonには行末の;
がない
・main
がない
・型宣言をしなくてもいい
・コメントアウトには#
をつかう
・if
, elif
, else
, while
, for
, def
をつかうときは、行末に:
がつく
・if
のあとの条件式を()
でかこむ必要がない
・print()
関数を使わなくても、1+1
だけでも結果が出力される
・論理積:&&
のかわりにand
・論理和:||
のかわりにor
・not演算子:!
のかわりにnot
割り算
Pythonの場合、割り算の結果は、整数どうしの割り算でも「float型」になる。
2 / 3
結果→ 0.6666666666666666
整数除算
/
記号ではなく、//
記号で除算すると、結果は小数点以下を切り捨てた整数値になる。
例えば、 3 / 2
は 1.5
ですが、
整数除算(3 // 2
)では、小数点以下を切り捨てて 1
になる。
3 // 2
結果→1
キーワード引数
通常の「位置引数」。
def func(arg1, arg2):
....
return
func(実引数1, 実引数2)
「キーワード引数」の場合、以下のようになり、順番を逆にしても構わない。
def func(arg1, arg2):
....
return
func(arg2=実引数2, arg1=実引数1)
タプル(tuple)
「組」とも呼ばれ、複数の要素が決まった順番にならんだ値を指している。
タプルオブジェクトの場合、リストオブジェクトのように要素を変更することはできないことが特徴。
変更できないがゆえに、処理が早い。
タプルオブジェクトの要素を変更する場合は、リストオブジェクトのように要素を変更するのではなく、あたらしくタプルオブジェクト全体を作り直す必要がある。
sample = (1, 2, 3)
Discussion