Pythonに入門してみた
こんちは、まんじゅうです。
今回は業務の方でPythonを使う必要が出てきたので
その入門をしてみた感想みたいなものを書こうかなって。
じゃあ、行こうか。
入門した感想
新鮮さと困惑が半分半分で、モダンな言語ってこんなんなんだ~っていう
率直な感想。
環境構築して動かさなくても良いってところも
今一番流行ってる言語なだけはあるなぁと。
間口が広いのはいつだって強みだと思う。
まぁ、やべえやつが侵入してくる確率も増えるのがタマにキズだけど。
Pythonの良いと思ったところ
・すげぇ簡単に始められる
→
感想の部分でも書いたけど、GoogleColaboratoryですぐに始められる
環境がすでにあるってことは超利点だと思う。
プログラミング初心者なんかは環境構築の時点で躓いてしまって
始められないみたいなことが発生するけど、
Pythonだとそれがほぼ無い。Googleで情報すら調べられない人は知らん
意識を変えるか優しい人に出会うまでやめとけ。
もう、何も考えずに入門用のサイトのコードを書き写して
一つ一つコードの理解をしていくだけで良いってのは
本当にPythonのメリットだと思う。
・情報量が多い
→
今一番流行っている言語なので、やりたいことを調べたら
たいてい出てきてしまうぐらいには情報量が多い。
この辺も初心者的には嬉しいと思う。
人気の無い言語とかだと調べても出てこなくて、
関連情報から頑張ってやるしか無いみたいなことがあったりするから
キツかったりする。
まぁ、それをするとプログラミングの力がつくだろうから
デメリットだけでも無いんだけど初心者にはキツイよねってことで
情報量が多いのはメリットだと思う。というか初心者でなくてもメリット
・ライブラリがめちゃめちゃ充実している
→
Pythonのメリットでいろんなサイトで取り上げられていると思うけど
ライブラリ、初心者向けに簡単に言い換えると追加パーツとか
便利ツールみたいなものが他の言語よりも充実しているといえる。
その便利ツールたちの解説だったり、入門用のサイトも
人気の言語だから情報量が多くて「実際に使ってみよう」ってなったら
迷うことがほぼ無いと思う。
やりたいことを検索したら、そのライブラリがあるってぐらいには
充実しているし、Colaboratoryなら「import」で簡単に取り込める。
最強か?
Pythonのクソだと思ったところ
・コードが見づらくなること
→これは個人差ある。
Pythonから入った人は「こういうものなんだ」と思って違和感が無い
と思うんだけど、僕はプログラミングへはC言語から入門した人間なので
基本的にif文とかって「 { } 」(波括弧)でくくってあるんだけど、
Pythonはインデント(スペース4つ入れてずらすこと)で判定している。
// C言語とか
if(true){
~ここに処理~
}
else{
~ここに処理~
}
// Python
if 条件 :
~ここに処理~
else :
~ここに処理~
いや、クソ見づらくない?というかif文の条件をカッコで括らんのもなんか
腹たってきた。見づらいやんけ。
これが死ぬほどコードを見づらくしていると思ってる。
(ここから言い訳タイム)
だって、波括弧で囲んでたらパット見でもどこからどこまでif文なのかが
わかるじゃないですか。
他にも、関数のくくりとかわかりやすくなるのになんで波括弧で
囲まないんだ?まじでPythonの長いコード読んでるときは辛い。
・プロトタイプ宣言が無いせいでコードの書き方に迷う
→これも個人差があると思うんだけど、
基本的にmain処理を一番上の方に書いてそのファイルで使う関数たちは
下の方で宣言する感じでコードを書いていく僕からしたら
くっそ見づらいコードを書くことになって非常に辛い。
// C言語とか
void main(){
~ここにmainの処理を書いていく~
hoge(); // ←なんかの関数を呼び出す
hogehoge() // ←別の関数を呼び出す
}
int hoge(){
return hoge;
}
string hoge(){
return "hogehoge";
}
// Python
def main()
sub()
def sub():
~ここにsubの処理~
return hoge
main() // main関数の中でsub関数が呼び出される
うん、もうこれは個人の好みなんだけど
僕的には一番上にそのファイルで実行される処理があって
下の方に関数が合ったほうが読みやすいと感じてしまう。
というか、Pythonで思ったのはなんでmain()を2回も書かにゃならんねん
めんどくさいし分かりづらいわって感じ。
うーむ、とても伝わりづらい。
まぁ、とにかく書きづらいし読みづらいってことが
わかってもらえたら良いかな。
慣れたら問題ないのかね?
という感じでPythonへの不満をぶつけてみました。
有識者の方が見たら「勉強不足だ」とか「ただ無能なだけ」って言われそうだけど自覚無いより自覚ある方が良いでしょ。ってことでガン無視します☆
というか結局Pythonの入門を済ませたけど
フロントエンドの方に配属になったせいでReactとNext.jsの
勉強をしてるんだけどね。できること増えるし正直Python使って
人工知能のパラメータいじってくれって言われても数学がちんぷんかんぷんでできる気がしなかったから良かったけどね。
でもReact・Next.jsも難しいからなんとも言えないのが現状だけど。
また今度ReactとNext.jsの感触についても書こうかな?
ブログの方も更新するので見てってください。
プログラミングのことも書くよ。
じゃあ、またね。