イイダリョウのブログ。開発環境このところ、データサイエンティストによるデータ分析記事が様々な切り口で興味深々です。皆さんPythonでプログラミングをしているようです。私もやってみたくなってきました。worldまでやってみました。プログラム実行のため「黒い画面(ターミナル)」のコマンドに触れました。黒い画面はコマンドの実行、出力ができる場所CUIを使う理由は環境を超えるため最後にデータ分析にはPythonが向いているらしいPythonというと「最先端のイケてる言語」というイメージ。なんだか漠然として、まだ自分が手を出す段階ではないなと。手の出し方自体もよくわからなかったし。冒頭に書いたようにすごく面白いデータ分析系の記事がたいていPythonで分析されていた。いうこと自分もやってみたいなーとだんだん興味が湧いてきた。自らのホットエントリ体験もPythonで解析。2018年11月13日どうにもこうにもこういうデータ解析の世界に惹かれてしまう。2018年11月14日スクリプト言語四天王サーバサイドに「スクリプト言語四天王」*1というのがあって調べるうちに違いがわかってきた。Perl:かつてCGIがWebに特化し、一世風靡した。カウンターや掲示板が作られた。なくデータ分析、タスク自動化、Webアプリなど用途が広いPHP:Webに特化。フレームワークはCakePHPが有名。WordPressにも採用されている。RailsがWebに特化。Pythonが人工知能向けというよりも、他の3つがWebメインでPythonは用途が広いんですね。QiitaPerlは今から手を出さなくてもいいかな...と個人的には思っていて、PHPはある程度触れていて、PythonとRubyが未知の世界です。今はデータ分析に興味があるので先にPythonに挑戦します。Pythonの教科書PythonのインストールMacでは最初から「Python2」がインストールされているのですが、書籍では「Python3」を推奨していたので、インストールしてみる。プログラミング言語を「インストール」ってどういうこと?と思う方もいるかもしれないが、言語はただ書いただけでは文字列でしかないわけで、その言語を認識して処理を実行する環境が必要です。その実行環境としての「Python」をPC内にインストールするわけです。下記のページからファイルをダウンロード。3.x.x」ボタンをクリックするとOSに合ったファイルがダウンロードできます。ダウンロードしたファイル「python.3.x.x〜.pkg」ファイルをWクリック指示に従い進んでいくと...インストール完了!黒い画面(ターミナル)を起動!さあいよいよPythonを書いてみましょう!Pythonプログラムの実行には「黒い画面」が必要なようです。あの黒い画面ですよ...。AltJSやらNode.JSやらWebPackやらDockerやら、最近のフロントエンド技術はたいてい黒い画面で実行されていますよね。それでは、ドキドキしながら黒い画面を開いてみましょう。黒い画面...Windowsでは「コマンドプロンプト」、Macでは「ターミナル」といいます。「アプリケーション」の中の「ターミナル」を開いてみる。それ!ごめん、白かった。「黒い画面」のイメージが強いですが、ターミナルのデフォルトでは「白い画面」ようです。こっちの方が見た目がテキストエディタチックで緊張しないので、このまましらばらく触ってみるw私はこれまで黒い画面にはそれほど触れることがありませんでした。Pythonの体験のために必要とあらば、ここらでがっつり黒い画面を経験してみるのもいいかもしれない。(上記のフロントエンド技術も身近に感じられるかもしれないし)ちなみに1行目は前回のログイン日時。二行目は操作対象(コンピュータ名、ディレクトリ、ユーザ名)です。最後にあるドル$マークはとても大事な記号。後述しますね!UNIXコマンドを叩くさて、ターミナルには「UNIXコマンド」という命令を書いていきます。「コマンドを叩く」なんて言い方もされますね。行の最後にはドル$マークが表示されます。コマンドはこのドル$マークの後に入力します。$の後ろにpython3と打ちます。python3Python3を起動してね、という命令です。エンターで実行!Python3が起動されました。最後に>>>と表示されています。これはPythonの「REPL(対話実行モード)」と言ってPythonのプログラムをその場で実行し、すぐに結果を表示できます。REPL(対話実行モード)で四則演算それではさっそくREPLで四則演算を書いてみます。1〜9までを掛け算します。9エンターを押して実行です!おお!すぐに答えが!「362,880」なんですね!実際にターミナルで全てのPythonプログラムを書くのは現実的ではありませんが、ここでPythonの命令が実行できるということはテストやデバッグなどを行えるということです!(JSでよくつかうalert()やconsole.log()のイメージです)なお、REPL状態を終了させたい場合はexit()を入力します。次に、Pythonのファイルを作って、その中にPythonの命令を書いてみましょう。ファイルの拡張子は.pyです。デスクトップにpythonというフォルダを作り、その中にhello.pyというファイルを保存します。world」的なコードを書きます。文字の出力はprint()というメソッドです。print("はろー、ぱいそん。")メソッドの後ろにカッコが付くのはJSやPHPと同じですね。引数に文字列はろー、ぱいそん。JSやPHPは行末にセミコロン;が必要ですが、Pythonの行末は不要です。cdコマンドでPythonフォルダに移動ふたたびターミナルを起動しましょう。$のあとにコマンドを書きます。コマンドは結構強烈な略字がたくさんあります。昔は少しでも少ない文字数にしたかったようです。directory」など、まるでDAI語みたいな世界です。DAIGOが放つ斬新な略語DAI語録まとめ!爆笑必至50選!!それではcdコマンドでターミナルの中でhello.pyファイルに移動しましょう。Desktop/pythonでデスクトップ直下のpythonフォルダに移動。Desktop/pythonエンターで実行!最初にチルダ~だったところがpythonになりました。「pthonフォルダに移動したよー」という意味です。ほんとかなー?なお、~はホームディレクトリという意味です。Qiitapwdコマンドでフォルダのパスを確認cdコマンドでpthonフォルダに移動したようなんですが、画面がテキストだけなので半信半疑。ここら辺が黒い画面のもどかしさです。pwdコマンドはファイルやフォルダのパスを確認することができます。pwdエンターで実行!Desktop/pythonと表示された。contents」リストのことですね。フォルダの中のファイル一覧を表示します。lsエンターで実行!ファイル一覧が表示!一覧といっても1ファイルですが、ちゃんとhello.pyがあるよー、と教えてくれてます。.pyファイルのPythonプログラム実行さあいよいよ、.pyファイルの中のPythonプログラムを実行します!python3コマンドのあとにファイル名を指定します。hello.pyエンターで実行!おお!さきほどhello.pyの中でかいた文字列はろー、ぱいそん。表示されました!ファイルの中のprint()メソッドが動いて結果がターミナルに表示されたということです。黒い画面はコマンドの実行、出力ができる場所これまで、黒い画面はあまり触らなかったので、どういう存在なのかいまいちわかってなかったんですが、これはコマンド(命令)を書いてその場で出力結果を得られる場所なんですね。jsファイルの命令→実行→出力はブラウザがメインですがコンソールやアラートにも出力可能です。"はろー、じぇいえす。";//jsファイル→コンソールに出力console.log("はろー、じぇいえす。");//jsファイル→アラートに出力alert("はろー、じぇいえす。");今回行ったのは.pyファイルの命令→実行→ターミナルに出力です。.pyファイルの命令をprint("はろー、ぱいそん。hello.pyターミナルに出力はろー、ぱいそん。考えると、普段やっていることと出力場所が変わっただけでたいして変わりませんね!CUIを使う理由は環境を超えるためターミナルやコマンドプロンプトは「CUI」といいます。WindowやMacのOS自体は「GUI」です。MacやWindowsが出る前のコンピュータといてば、マウスもなくキーボードだけで黒い画面にコマンドを打って操作をするCUIが普通でした。ウィンドウのフォルダやファイルをドラッグしたりコピペしたり、GUIで直感的な操作をしていると現代では、CUIはとてもわかりにくく感じます。Interface):マウスでウィンドウ、ファイル、フォルダを操作できる私たちのPCは1台ごとにモニター、キーボードなど入力、出力機器がセットになっています。PCのローカル環境で操作をするにはGUIで問題ありません。サーバはWebサーバ、メールサーバ、DBサーバ、FTPサーバなど複数のハードを操作します。サーバは本体のみでモニター、キーボードなどが付いてないことが多いです。*3そういった環境では遠隔のマシーンからサーバーにアクセスしてCUIで操作する方が使い勝手がよくなるんだな、と理解しました。PC:1台ごとにモニター、キーボードが付いている=GUIでOKサーバ:複数台のサーバで本体のみ=CUIで遠隔からアクセスして操作するそしてCUIはPCローカルでもいろんな実行環境を超えてファイルやフォルダにアクセス、操作ができる。それがCUIを使う理由かな、とイメージできました。黒い画面で複数のサーバマシンを超えて遠隔操作できる黒い画面でnode.js、python、rubyなどの実行環境を超えて操作できる最後にPythonに触れることで、副次的に黒い画面(白かったけどw)のUNIXコマンドの理解も深まりました。ターミナルを利用する別の技術にも入りやすくなる気がします。node.jsやRubyなどをやっていきたいですね。Pythonについても進めていきます。以前、JSとPHPの書式を比較した記事を書きました。クモのようにコツコツと※参考:Web開発環境の記事まとめqiita.com*1:ちなみにJSはフロントエンドのスクリプト言語*2:HTMLでも歴史が古い要素は文字数が少ないですね。20:02Tweet関連記事2019-11-20Gulpのインストールが5分で出来なかった話(苦戦中)メタ言語のコンパイル環境を作る!続きです。CLIのプロトタイプとプロジェクトを作るVue.jsの続きです。CLIをインストールしてみました。...2019-01-17ブログに埋め込めるオンラインIDE比較(サーバサイド版のCodePenを探して)フロントエンド言語(HTML、CSS、JS)の記事を書くときにいつも...2018-11-27黒い画面だけでWebページを作成-後編:viエディタでコーディング!「前編」の続きです。はてなブログProフロントエンドエンジニア。神奈川に住まう四十路のオジキ。DTP→Webデザイナーから転向し今に至る。引き続きコツコツの日々。(24)リンクTwitterInstagramYoutubeCodePenGitHubPinterestQuolaFacebooknoteQiitaはてなブログをはじめよう!idr_zzさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。