!!! サイト改修中のため表示が乱れる場合があります(1月末頃まで) !!!
未分類

16-20. WindowsのバッチファイルでSpyderを立ち上げずにPython実行

やること

WindowsユーザーなのでPythonの開発環境にはWinPythonを使っています。WinPythonはインストールの必要がないので、USBメモリに入れて持ち運ぶこともできるんですよ。

さて、Pythonの実行にはいちいちSpyder.exeを起動しないといけないのかというと、そうではありません。今回はバッチファイルでPythonプログラムを実行してみます。ついでにバッチファイルでパッケージを pip install する方法も紹介します。パスの知識を前提としています。

実行環境

WinPython3.6をおすすめしています。

WinPython - Browse /WinPython_3.6/3.6.7.0 at SourceForge.net
Portable Scientific Python 2/3 32/64bit Distribution for Windows

プログラムの作成

引数を受け取って表示し、5秒待ってから終了するプログラムを書きました。ファイル名は「test1.py」とします。

import sys
import time

#引数の受け取り
args = sys.argv
arg = args[1]
print('引数を受け取りました')
print(arg)

#5秒待って終了
print('5秒待って終了します')
time.sleep(5)

バッチファイルの作成

メモ帳で以下の内容を「mybatch.bat」として保存します。「test1.py」に引数として “Hello” を渡して実行する内容になっています。

パスは空気を読んで設定してください。WIndowsですから半角の¥マークを使います。

C:\Users\(ユーザー名)\Desktop\WPy-3670_1\python-3.6.7.amd64\Python.exe test1.py Hello

なお、バッチファイルを編集するには右クリック>編集です。ダブルクリックすると実行してしまいます。

バッチファイルの実行

上ではプログラムファイルを相対パス(./test1.py)で指定したので、このように同じ階層に並んだ状態にします。バッチファイルをダブルクリックすると実行されます。

結果を表示するコマンドプロンプトのウィンドウが立ち上がり、5秒後に自動的に閉じました。引数の “Hello” が print されていることが確認できます。

なお、ウィンドウが立ち上がってすぐに消える場合はエラーが起きています。バッチファイル中のパスに日本語が含まれている、あるいはプログラム中のエラーが考えられます。

(おまけ)バッチファイルでパッケージのpip install

バッチファイルを次のようにします。こちらもパスは空気を読んでください。

call C:\Users\(ユーザー名)\Desktop\WPy-3670_1\scripts\env.bat
pip install vcopt

ダブルクリックで実行すると pip install vcopt が実行されます。

まとめ

プログラムにあまり馴染みがない人にプログラムを実行してもらう場合に有用な方法です。

リアクションのお願い

「参考になった!」「刺激された!」と思ったらぜひリアクションをしましょう。エンジニアの世界はGive and Takeによって成り立っています。これからも無料で良質な情報にアクセスできるよう、Giveする人への感謝をリアクションで示しましょう!

この記事をシェアする

自身のブログ等で使用する場合は引用を忘れずに!

また、寄付も受け付けています。コーヒー1杯でとても喜びます(*˘︶˘*)

 Amazonでギフト券(アマギフ)を贈る

こちらのリンク から金額を指定してお贈りください。(デフォルトで10000円になっているのでご変更ください)

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 Amazonで食事券(すかいらーく優待券)を贈る

500円 1000円 2000円 5000円 からお贈りください。

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 その他、ギフト券やクーポン券をメールで贈る

デジタルのギフト券/クーポン券はメールアドレス(staffあっとvigne-cla.com)までお送りください。受領の返信をいたします。
紙のギフト券/クーポン券は 「郵便物はこちらへ」の住所 まで送付してください。名刺やメールアドレスを同封していただければ受領の連絡をいたします。
余った株主優待券等の処理におすすめです。
いずれも見返りはありませんのでご了承ください。

不明点はSNSでお気軽にご連絡ください

ビネクラのTwitter・Youtubeでコメントをください!


Slack・Discordの場合はこちらの公開グループに参加してShoya YasudaまでDMをください!


※当ブログに関することは何でもご相談・ご依頼可能です。

この記事を書いた人
Yasuda

博士(理学)。専門は免疫細胞、数理モデル、シミュレーション。米国、中国で研究に携わった。遺伝的アルゴリズム信者。物価上昇のため半額弁当とともに絶滅寸前。

タイトルとURLをコピーしました