プログラミングしたい日記

いつもプログラミングとか音楽聞いてたりする人の日記です

入門 Python3を2章まで読んだ

入門 Python3を大学の図書館で借りて、2章まで読みました。
Javaしかそこそこできない僕が、記憶の整理もかねて違いとかPython独自の機能とかをざっくり書いていこうと思います。

JavaPythonの違い

コンパイル型言語とスクリプト言語

Java Python
コンパイル型(ジャストインタイムコンパイル方式) スクリプト

Javaコンパイル言語(実行を高速化するために、機械に読まれることに特化した形に変換して実行する言語)であり、対してPythonは直接コンピューターにプログラムを読ませます。
この辺は曖昧のなのであってるかどうかよくわかんないです。

型付け

JavaPythonでは、型付けの方法が違います。

Java Python
静的 動的

静的型付けは、プログラマが自分で変数の型を指定して、その変数にはその型の値しか代入できなくなります。
それに対して動的型付けは、プログラマが自分で変数の型を指定しなくても、Pythonの実行プログラム(インタプリタ)が勝手に型を判定してくれます。
僕的には、静的型付けの方が今のところ好きです。何を代入すればいいのか明確になって判断がしやすいんで。

Pythonの文法

プリミティブ型変換

Javaでは「(Type) variable」や「Class.valueOf(variavble)」で型変換をしていましたが、Pythonでは関数を使って型変換をします。

文字列から整数へ

Java:

Integer.valueOf("123");


Python:

int("123")
浮動小数点数から文字列へ

Java:

String.valueOf(123.45);

Python:

str(123.45)

この型変換機能はスッキリしてて読みやすいですし便利ですね。

スライス

これがすごく便利そうな機能。リストの中身をいい感じに取り出せる機能。
文法的には次な感じ。

list[start:end:step]

startとかendとかの値は省略可能で、省略すると、

  • startには0
  • endにはlen(list)
  • stepには1

が入るようだ。
start, end, stepには負の数も指定することができ、その場合は「len(list) - n」のような数値になるらしい。
例えば、list[-3:]であれば、list[len(list)-3:list(len):1]のような感じになる。

文字列の掛け算

文字列に演算子「*」を適用すると、右項の値だけ左項の文字列が繰り返される。
例えば、「a*4」は「aaaa」になる。

感想?

まだまだPythonの魅力にあまり触れられていない自分ですがどんどん触れていきたいと思います。
実は、既にPythonで監視カメラを作った経験がありPython自体にはある程度触れています。でも調べながらだったので文法とかその場その場で覚えていく感じで中途半端なんですよね。
なので、本を使ってがっつりやろうと思った次第です。
水曜日にテストあるのに何やってんだって感じですが、どっちもそこそこやっていきます(*´﹃`*)。

CSS Design created by satotaka99. Thankyou.