特に何を作りたいわけでもなくPythonの本を読んでますが、C、C++を知っているとわかりやすいじゃんね (^^)/
なんのあれかは分かりませんが、ちょっと安かったのでKindle版を買ってしまいました。810円。(先ずはネットで調べればいいけどw)
+=、-=、*=、/=みたいな演算子は同じだしデータ型、キャストも同じ感覚ですよね(構造体とかは無さそうだし)
Cで言うところの配列は、可変長のリストと、immutable(値の変更不可)な配列タプルがあるようですが、リストはappend、insert、del、push、popなどがあってC++のvectorみたい(タプルはそういうメソッドは無い)
「タプル」ってのは初めて聞きました。
間違えないよう明示的に[]、()、{}で区別するのもよさげ。{}は辞書というデータ構造。
(リストはタプルの機能を含むので全部リストでもいいのですが、コスト(メモリや速度)が掛かるのでタプルで済むのならそっちにするというのがあります)
printf()みたいなprint()もあるのね。勉強時にしか使いませんが、%dとか懐かしい。
制御文はインデントする場所が決まっているのが画期的?
同じ処理でも、
if(式){
true時の処理;
}
if(式)
{
true時の処理;
}
if(式)
{
true時の処理;
}
とかいろんな書き方をする人がいなくていい!
というか決まった書き方しかできないのは「なんてこったい」って感じだけど、オレの書き方に合わせろとも言えないし、人の書いたプログラムを読まされる場合は非常にありがたく感じます。
if 式:
true時の処理
true時の処理
次の処理
と条件内の処理は必ずインデントを下げて記述。
制御文になると他の言語が混じってる感じ。
for文がforeachみたいだったり、知るかぎりではC#とかいいとこ取りで、タイプミスや人為的な勘違いをなるべく起こさないように設計されているのでしょうね。実際に業務で使えばあれこれ出てくるのだろうけど。
回数指定する繰り返しにはrange()という数字を便利に指定するあれもあるのね。もちろんbreak、continueもある。
私はブロックの{}がないとわかりにくいかも。慣れですけど。
あと、3項演算子が慣れるまでわからん。
x = 10 if a > 0 else 20 <– Python
x = (a > 0) ? 10 : 20 <– C, C++, Java, JavaScriptなど、こっちで慣れている
Python自体はシンプルで、如何に外部のライブラリを知っているか。必要なものを探して持ってこられるかという感じですかね。(何でもそうか)
まださわりを読んだとこです。難しくなって来たので続きはまた今度読みますw(といって二度と読まないパターン……)
広告とか
-- 記事一覧ページへ --