Sublime Text3きっかけで、前からちょっと触ってみたいなと思ってたスクリプト言語Pythonを勉強することにしました。
ネットで調べれば入門的な内容はいくらでも出てくるんですが、ネットでまとまった分量のテキストを読むのって結構疲れるので、今回ははじめから本を一冊読んでみることに。
プログラミング経験が全くないわけではないものの、いきなり難しい内容の本に当たってしまうのも大変なので、Amazon先生でPythonの入門に良さそうな本をレビューを見ながら検討した結果、コチラの本を購入しました。
プログラミング未経験者にオススメ
早速読んでみたんですが、コチラは完全にプログラミング未経験者向けの本でしたw
多分プログラミング未経験の方が読んだら非常にわかりやすいと思います。
わたしは一応プログラミング経験が多少あったので、変数やら関数(メソッド)、クラスやオブジェクトの説明なんかについてはサラッと流させて頂いたんですが、文法規則やデータ型などわたしの知りたかったPython独自の内容についてもわかりやすく書かれていいたのですんなり読めました。
ただ、わたし的にもう少し突っ込んだ内容が知りたかったと思うレベルには触れられて無かったのがちょっと残念です。
とはいえ、この本の対象者を考えると突っ込みすぎるのはダメなんでしょうね…w
今のところ把握したPythonの特徴
PythonスタートブックでPythonの表面をペロッとなめたくらいの知識は手に入ったので、足りない部分はネットで補いつつ、今のところ分かった範囲でPytnonの特徴をまとめてみます。
強制インデント
- CやJavaではブロックのまとまりを{}(波括弧)でまとめるところ、Pythonではインデントでブロックを表す。
ブロックの前に:(コロン)
- プロックが始まる前の行の末に:(コロン)でブロックの開始を表す。
- ブロックの終わりは特に何もなく、インデントの深さ戻すことで判断される。
行末に;(コロン)不要
- 原則1行1文。
アクセス修飾子はなし
- 変数などの名前の前に_(アンダースコア1つ)か_(アンダースコア2つ)つけることでそれっぽく使えるが、アクセスできなくなるわけではない。
型宣言も不要
- 変数宣言に型は不要。
- 変数には値を入れないと宣言できない。
- リストや辞書は空の状態で作成可能。
if〜elif〜else文
- Javaでの else if は elif。
- if文の中で使えるelseは一度だけ。
ループ
- forループで回せるのはリスト型や辞書型(for val in iterable:)。
- 回数ループするときはrange()関数で。
- while はJavaと一緒。
関数、メソッド
- 定義はdefキーワード
- メソッドの第一引数はself(Javaのthisみたいなもん)。
- オーバーロードは出来ない(引数にデフォルト値を与えて擬似的には実装可能)。
まずはこんなところでしょうか。
スクリプト言語は初めてなので未知の部分が多いですが、変数に型宣言不要とかはスクリプト言語では結構あることなのかな?
あと、リストはかなり柔軟性ありそうですね。上手に使えれば楽しそうですw
コメント