001.ツンデレ Python(パイソン)
初回:2018/08/08
1.はじめに
昨今、Python(パイソン)の人気が上昇しています。
元々、コード量が少ない、コードが読みやすい、誰が書いても同じコードになるなどの特徴があり、標準ライブラリやサードパーティーのライブラリも豊富です。最近では、人工知能(AI)分野(※1)での多くの実績に後押しされ、改めて注目されています。
ところが、初心者に優しいという肩書きが、「ホントに?」と、初心者の私には思えてなりません。
コード量が少ないは、納得です。コードが読みやすいは、少し「?」が付きます。誰が書いても同じコードに......なりません。
まあ、実は、そんなことはどうでもよく、何が言いたいかというと、この言語、直感が働きません。
「お前は、直感でコーディングしているのか?」 と思われそうですが、世間では、これを、フィーリングと呼んでいます。
悲しいことに、フィーリングが、合いません。
これほど便利で(これは事実)、これほど強力(これも事実)な言語なのに、付き合い方が、さっぱり判りません。
まさに、「ツンデレ(※2)言語」の代表格と思っています。
このコラムは、そんな、Pythonと悪戦苦闘しながら、好かれようと努力している一人の初心者が、やっぱり振り回されている姿を、できるだけ、実例(※3)を交えながら愚痴っているという物語です。
最後に、ハッピーエンドになるのか、徒労に終わるかは、私にも分かりません。
また、よろしければ、うまく付き合う方法をご存知の方、単に、励ましの言葉をかけていただける方、いろいろなご意見を頂けたらと思っています。
2.ひと休み
進め方ですが、ひどい仕打ちを受けた、テーマごとに、まとめたいと思いますが、そのテーマ選定は、まったくのでたらめというか、思いつきで書きたいと思っています。なので、以前出たテーマが、再び出ることもありますし、前回の結論に、アドバイスを加味して、新しい結論を導き出すこともあるでしょう。
ただ、全体的に、愚痴がメインですので(というか、愚痴を書きたいがためのコラムなので)うまくいった例より、ハマッた例の方が多いかもしれません。
初心者の方には、つらつらっと読んでいただき、「ああ、そういうハマリ方するのね」と、参考にしていただければ、愚痴を聞かされた価値があったというものです。
3.最後に
最初に書くべきだったかもしれませんが、ここで実行している Pythonは、Raspberry Pi3(※4) 上で標準でインストールされているバージョンです。どちらかというと、ラズパイ上で使用していて、苦労しているというお話ですが、MAC版でも、Windows版でも、文法的には、同じようなものだと思います。
=======
※1 人工知能(AI)分野
Google Tensor Flow が有名ですね。他にも、数値計算などのライブラリも
各種揃っています。
※2 ツンデレ
ここでは、ある時は、やさしく、ある時は厳しい態度を
取る2面性があるという意味で使います。
※3 実例
ソースを実際に実行しながら、検証していきたいと思います。
※4 Raspberry Pi3
ARMプロセッサを搭載したシングルボードコンピュータで、5000円前後で購入できます。
最新モデルは、「Raspberry Pi 3 Model B+」です。
コメント
しまりす
私もPython勉強しようとしてたんですけど
Pythonは2.X系と3.X系があって2.X系でないと使えないサンプルが非常に多くて
結構いらいらすること多いですね
いかおくら
おすすめのプログラミング言語教えてください!!
ちゃとらん
コメントありがとうございます。
私は基本、Java使いなので、お勧めするならJavaなんですが、目的ごとにおすすめが違ってくると思います。
1.Java
静的型付け言語で、構文も比較的きっちしており、プログラムの基本を学び、業務系にもスマホ(Android)系にも適用できる。
既存のシステムは多数導入されており、保守や機能拡張などの仕事も多いので就職等でも有利とまでは言えないがアドバンテージはある。
学習難易度は少し高めだが、書籍やWebなどの情報は非常に多いのでやる気さえあれば独学で学べる。
2.Python
機械学習、AI、IoTなど、今はやりの言語で、その方面に興味があるのであれば、非常によい選択肢だと思われる。
動的型付けと、意味不明な文法、ver2とver3での文法違いなど、私にとっては天敵の言語です。
文法エラーが実行時にしか発見できないので、大規模な開発には向かない。
Raspbery Pi と、Pythonを組み合わせた IoTは、非常に面白いので、趣味として取り組むには最適。
ほかの言語は、好みでどうぞ。