本日絶賛お休み中 プログラミング初学者のススメ8
こんにちは、しろうです。
6月に入ってすぐ夏風邪と夏鬱をこじらせました。
なかなか起き上がることができなかったのですが、
・note更新
・twitter更新
・写経
の3つは必ず何かしらの形で行うと決めているので本日は遅めスタートです。
このnoteは同じような20代〜30代という世代にあってプログラミングや最新技術に対してアンテナを張っている人、又は何かしらの形で新技術に触れるのに迷いを感じている人に届くといいなと思っています。
↓ここからが本文です
さて本日はエントリーの1番と2番で書いた書籍の中でPython学習にあたってさほど重要ではないけれど、知っておいてよかったなと思ったポイントを3つご紹介しようと思います。
・Pythonの名前の由来
・import とファイルの取り込み
・正規表現とパターンの見つけ方
【1:Pythonの名前の由来】
すでにWikipediaに書いてあったりするのですが、僕がよく学習しているプログラミング言語「Python」の名前はコメディグループから来ています。Monty Python's Flying Circus
僕ももちろん生まれるのコメディなので、友人が持っていたDVDなどを見るにとどまっていますが、「8時だよ全員集合」を彷彿とさせるテンポ(日本の方向けにどんな表現がいいか考えていました・・・)、それでいて時代的にも銃やナイフなんかが小道具として使えるコメディです。問答で笑いが起きる、『不条理』なお話と記載されていたりします。
(あくまでにわか知識でごめんなさいです)
現代でこれだけ人気のプログラミング言語の語源の起源は「笑い」も愛していたことだと思います。僕たちも笑いながらプログラムしていけるといいなーとか思ってますw
さて、Pythonの名前ですが、他に「ニシキヘビ」の意味も含んでいるため、O'Reillyの教科書やインストールしたIDLE(pythonの開発環境)などはヘビマーク。僕が使っているAnacondaもPythonのヘビの意味から派生してつけられたことは疑いようがありません。
起源を知ったり、由来を知ることで、愛着が湧いてきませんか?
(蛇苦手な人はごめんなさい)
【2:importとファイル取り込み】
次に大枠として僕の中のPythonのイメージをお伝えしたいと思います。あくまで一意見ですが、同じようなイメージから入る人も中にはいるかも!と期待をしています。
このプログラミングを行うPython(ニシキヘビ)はとても覚えのいいヘビです。僕たちは蛇使いとして知恵と問題を与えることで「答え」をもらえるように飼育できます。
import (インポートコマンド)
今のところ、僕の中でかなり好きなコマンドです。
pythonにはあらかじめ色々な技術者の方が開発した「モジュール」と呼ばれるファイル群が存在します。このモジュールを呪文一つ唱えるだけで蛇さんの頭にインプットできるのが、インポートコマンドです。最初のエントリーでも書きましたが、色々な呪文があり、それに応じてゲームを作ったり・複雑な演算につなげたり、描画したり。。。(他)が可能になります
これらのモジュールファイル群の他に、もう一つ蛇君に食べさせるもの
それが、解析用データです。
例えば、アンケートで仕入れた情報やお客様固有の意見、教師データとして取り込むデータはたくさんあります。
代表例として、CSV (comma separated values)ファイルは表計算ソフト(Excel)などから精製できる上、属性ごとの分類が容易なので僕はよく見るイメージです。
知識をimportコマンド+モジュールファイル(.pyなど)で蓄え、
解析ファイルを飲み込んで任意の戻り値や結果を返してくれる有能な蛇さんなのです。
【3.正規表現】
正規表現とは、決められたコマンドに則って、読み込んだファイル等から任意の文字列を検索する方法です。
正しくは「連続した文字列の検索パターン定義」とされていますが、最初は文字検索だと覚えておいていいかと思ってます。
ーーー出典:独学プログラマー
中でも、僕が好きなのは貪欲・非貪欲な正規表現です。
"__.*__" 貪欲な正規表現:アスタリスクをつけると、できるだけ長い文字列を
"__.*?__"非貪欲な正規表現:できるだけ少ない文字列を
それぞれ取得して表示する機能があります。蛇の行動パターン+お腹の空き具合でとってくるものを教え込むことができるんです。
ね、なんかハリーポッターっぽいでしょ?
ハリーやトム・リドルのような叡智を持った蛇使いを目指して、勉強していこうと思います。
イメージから入って、
蛇に色々なものを食べさせてみる。
調教して色々な値をとって来てもらう。
こんなPython遣いになるのはいかがでしょうか?
今日は2000文字くらいとキリがいいので、ここまで
*twitterのフォロワーさんより、IDLEは読み取ってくれる装置ではなく、開発環境だよー!と教えていただきました
ありがとうございます!訂正させていただきました
この記事が気に入ったらサポートをしてみませんか?