どうも。ケニー(tsujikenzo)です。このシリーズでは、2023年3月から始まりました「ノンプロ研Python中級講座1期」について、全6回でお届けします。今日は5回目です。
前回のおさらい
前回は、「Day3 モジュール」をお届けしました。
今回は、「Day4 ファイル操作とAPI」をお届けします。
今日のアジェンダ
- 今週の成果物
- カレントディレクトリ
今週の成果物
今週は、海外グルメサイトのAPIを叩いてみました。APIの復習になってよかったです。
公開した記事はこちらです。
noteと合わせて、Day4の振り返りをしましょう。
そして、TA(ティーチングアシスタント)のこはっさんがすばらしいブログを書かれていますので、講座の振り返りはこちらでいいかなと思います。
なので、わたしのブログでは、ちょっと独自路線でいきたいと思います。
カレントディレクトリ
ノンプログラマーがパス関係でつまづく壁の1つに「カレントディレクトリ」があると思います。
パス関係のだいたいのエラーは、カレントディレクトリを正しく理解できていないことだったりもします(個人的な感想です)。
カレントディレクトリとは
カレントディレクトリとは、実行中のソフトウェアなどがストレージ(外部記憶装置)のファイルシステム中で現在位置として指し示しているディレクトリのこと。相対パスでファイルやディレクトリなどを指定する際の基準の位置となる。 引用元:IT用語辞典
はじめて読む人にとっては、カタカナ語が多すぎて理解しづらいと思います。
実際に手を動かして理解してみましょう。
ディレクトリの移動
Windowsボタン+Rを押して、名前に「cmd」と入力してEnterを押します。
カーソルがチカチカ点滅しています。カーソルの手前には、あなたの現在地を示すディレクトリが表示されています。
WindowsやMacなどのOSを操作しているときは、フォルダ=ディレクトリと考えて問題ありません。(サーバーなどでは必ずしもフォルダが作られるわけではありませんので、フォルダとは言わないのでは。個人的憶測。)
コマンドプロンプトでは、コマンドと呼ばれる命令文を実行することで、フォルダやファイルに関する操作が可能です。
フォルダを移動する命令文は、cd(恐らく、カレントディレクトリの頭文字)です。cdの後に、移動したい先のフォルダ名を記述します。
cd desktop
カレントディレクトリが移動しました。
cdコマンドのあとに入力するフォルダ名は、絶対パスも可能です。コマンドプロンプトを再起動して最初からやってみます。
cdと入力したあとに、フォルダをドラッグアンドドロップしましょう。
cd の後に、C:から始まる絶対パスが入力されました。Enterを押すと、カレントディレクトリが移動します。
カレントディレクトリをひとつ上の階層に移動するコマンドは、cd..です。
ファイル操作
カレントディレクトリのファイルとディレクトリ一覧を表示するコマンドは、dirです(恐らくディレクトリの略語)。
デスクトップの一覧を表示してみましょう。
カレントディレクトリに、フォルダ(ディレクトリ)を作成するコマンドは、mkdir ディレクトリ名です。
ただし、作成しただけでは、なにも変化がおきません。
カレントディレクトリを移動してみましょう。移動できるということは、ディレクトリが作成されているということです。
最後に、作成したディレクトリの中身を表示してみましょう。
もちろん、パソコン上のデスクトップには、空のフォルダが作成されています。(GUIがない時代からパソコンを触ってる方からすると、説明が逆なのですが、暖かく見守ってください)
作成したディレクトリに、メモ帳などでテキストファイルを作成しましょう。
ファイルを実行するということ
コマンドプロンプトから、ファイルを実行するには、ファイル名を記述してEnter押します。
こんな感じで、テキストファイルが開くと思います。
同じことを、VS Codeでやってみましょう。
VS Codeのターミナル(コマンドプロンプト)で、カレントディレクトリを移動したり、テキストファイルを実行してみましょう。
テキストファイルが開く画面は割愛します。
次に、適当にPythonファイルを作成します。
Pythonファイルを実行するためには、ファイル名の前に、py(もしくはPython)というコマンドが必要です。
pyやpythonを付けても実行できないばあいは、環境変数の設定が必要ですので、別の機会にしたいと思います。
普段、「このファイルを実行しましょう」と言われたら、再生アイコンをクリックすると思います。
これは、VS Codeの方で、いい感じでカレントディレクトリを指定して、ファイルを実行しています。
よくみると、Python本体の場所を絶対パスで指定しているのがわかります。
これを理解すると、絶対パス、相対パスの意味も深まるかなと思いました。
REST APIの成り立ちについて深堀りしようかと迷いましたが、長くなったので。
まとめ
以上で、 「Day4 ファイル操作とAPI」 をお届けしました。
かなり自分メモになってしまいましたが、VS Codeで理解していなかったファイル操作について、整理できました。
IDEが発達してなんでもラクになりましたが、やはり基本は大事ですね。
次回は、いよいよ 「卒業LT」 をお届けします。