こんにちは、菱沼です。
「シゴトがはかどるPython自動処理の教科書(著:クジラ飛行机様/マイナビ出版)」を利用して、Pythonを使った自動化について学んでいきます。
前回は、バッチファイルを作って、Pythonプログラムをダブルクリックで実行できるようにする方法を学びました。
今回は、コマンドラインからのプログラム実行方法について学びます。
コマンドプロンプトでPythonプログラムを実行してみよう
Windowsのコマンドプロンプトを使って、Pythonプログラムを実行するには、まずプログラムが置かれているディレクトリに移動する必要があります。
移動する際に使うのは[cd (ファイルパス)](change directoryの略)です。パスは相対パス、絶対パスのどちらでもOKです。(Linux、macOSはターミナルです。同じく[cd]で移動できます。)
[cd]の使い方について詳しく知りたい方は以下の参考サイトをご覧ください。
【初心者向け】cdコマンドの使い方を分かりやすく解説!(Windows)
【初心者向け】cdコマンドの使い方を分かりやすく解説!(Mac)
ここからの動作確認はWindowsのみで行います。
コマンドプロンプトを開くと、こんな文字が表示されます。
C:\Users\(ユーザー名)> |
これが現在いる位置で作業場所(=カレントディレクトリ)です。カレントディレクトリは現在地なので、cdコマンドで移動すると、その移動先がカレントディレクトリになります。
ではここで、テキストから引用です。
————————
P.33
コマンドプロンプト上で以下の表に記述することで任意のPythonプログラムを実行できます。
cd (プログラムファイルのあるフォルダのパス) python3 (プログラムの名前) |
(中略)
コマンドプロンプトとターミナルでは実行できるコマンド体系が異なりますが、上記のPythonを実行するコマンドに関しては共通です。
————————
引用文内に書かれている[python3]というコマンドは基本的にmacOSやLinuxで利用されます。この2つのOSについては後ほど。
Windowsの場合は[python]になると思いますが、このコマンドは、Pythonインストール時に、環境変数PATHを通すというチェック欄にチェックを入れずにPythonをインストールした場合には利用できませんので、再インストールしていただくか、別途設定していただく必要があります。設定したい方は以下の参考サイトをどうぞー。
ちなみにWindowsでPATHを通さずに実行したいという方は、Pythonのインストールディレクトリに移動するか、フルパスを書いた上でPythonプログラムを実行することができます。
例)
C:\Users\~~~\Python\Python311.exe プログラム名.py |
実に面倒くさいですし、特に不利なものでもありませんので、環境変数にPATHを通すか、Launcherを入れることをお勧めします。
さて、私の場合は、Windows環境でランチャーが入っていますので、[py]コマンドで実行できます。
開くのは前回の時に作成したcheck.pyです。
C:\Users\xxx>cd test2024 C:\Users\xxx\test2024>py check.py |
問題なく実行されました。ディレクトリを移動せず、パスで書いてもOKです。
ちなみにランチャーが入っている場合で、複数のPythonバージョンが入っているとき、インストール済みのPythonのバージョンの中でも、最新のバージョンによって実行されます。そのため、他のバージョンで実行したい場合は、[py –(バージョン) プログラム名]と書く必要があります。
補足)macOSやLinuxのコマンドについて
macOS、Linuxの方は[python3]と書きます。もうほとんどないと思いますが、Python2代を利用したい場合は[python2]と書きます。
ただ、macOSやLinuxはインストールするときの流れでpathを設定する場面があったという記憶があるのですが、そこで指定したものを利用することもできたと思います。ほとんどの場合が[python3]とされているかと思いますが、複数バージョンを入れている方は、別のコマンドになっているかもしれません。ご確認ください。
補足)パスの取得方法
ところで、Pythonプログラムが置かれている場所のパスの取得方法はWindowsならフォルダを開いたときに出てくるアドレスバーをクリックすると正確なパスが表示されますのでコピーしましょう。
macOSの場合は該当のフォルダに行った後、[command]+[option]+[C]でディレクトリのパスがコピーされるそうです。
もしくはファイルやディレクトリの一覧を表示するコマンド[dir](macOSは[ls])を使うと、指定したディレクトリ内にあるものが表示されるので、そこから調べてちまちま書くのでもいいとは思います。面倒くさいけど。
macOSでプログラムを手軽に実行する方法
次に「macOSでプログラムを手軽に実行する方法」というのがテキストに書かれていますが、私は今macOS環境を整備していないので引用のみで失礼します。
————————
P.33
macOSでは、Windowsと異なり、拡張子ごとに設定するのではなく、そのファイルだけに特定のアプリを関連付けることができます。
そのため、macOSでは基本的にテキストエディタでPythonファイル(拡張子.py)を開く設定にしておいて、自分で作ったプログラムや安全だとわかっているファイルに限って、Pythonで開くように設定すると良いでしょう。
————————
というわけで、手順を簡単にまとめておきます。
- Finderで該当のプログラムファイルを右クリックし、「情報を見る」をクリック
- 「このアプリケーションで開く」から、「Python Launcher.app」を選択(一覧にない時は「その他」からLauncherを探して選択)
- 設定後、該当のプログラムファイルをダブルクリックして実行されるか確認
PC内にあるすべてのPythonプログラムファイルをダブルクリックで実行できるようにすることもできますが、セキュリティ的におすすめできないとのこと。それはそうですよね~。
それではきりが良いのでこちらで終了です。次回からExcel作業の自動化に入っていきます。今回もお付き合いいただき、ありがとうございました。
Pythonの自動化で業務の効率化を図りたい方は、グローバルウェイに依頼してみてはいかがでしょうか?興味がある方は以下をご覧の上、是非お問い合わせください。