ある日のPythonプログラミング。。。。
フッ。。。またつまらぬプログラムを書いてしまった。
(決め顔で実行)
(ファイル名が違っていて、気を違えた管理人)
どうもこんにちは、コンです。
今日はPython実行中にファイルをドラッグ&ドロップで指定する方法についてお話いたします。
上では私の恐怖体験を書かせてもらったのですが
パソコンを使っていて仕事だったり遊んでたりしていると
ユーザーからファイルの指定したり、数字入力をする機会ってのが多くあります。
これと同じことをPythonで実行するには
『input関数』を使うことで、キーボードから入力した文字情報をプログラムで受け取ることができます。
例えば日常的に使うプログラムだと、、、メールやメッセージアプリだったら
マウスを使って、写真やwordなんかの資料を書いてるメールに持っていきますよね。
Pythonで何かツールを作った時も同じ感じで、ユーザーに処理したいファイルを指定してもらいます。
今日はそんな内容のお話。
Python自動化簡単レシピ Excel・Word・PDFなどの面倒なデータ処理をサクッと解決
input関数
Pythonでは『input関数』を呼び出すことで、キーボードから入力した文字だったり、ドラッグしてきたファイルのディレクトリ情報をプログラムで受け取ることができます。
以下のようなプログラムが例になります。
上の再生マークを押すと実行されます。
この中身について解説していきます。
ポイント1:実行すると、一時停止しているような状態になる
上のサンプルプログラムを実行すると
1行目のprint関数が実行された後、文字入力を待っている状態になります。
なにかしら文字を押してEnterを押すと、次の文が実行されます。
上の例では適当な文字を入力してみてください。
ポイント2:受け取ったデータはすべて文字列で出力
キーボードで入力した内容は全て文字列で出力されます。
例えば「1」や「2」などは数字じゃなくて文字になるので、計算しには使用できません。
もし使いたい場合はint関数などで数字に変換して使用します。
input関数実行時にファイルをドラッグ&ドロップ
コマンドプロンプトやターミナルにファイルをドラッグ&ドロップすると
そのファイルのフルパスを取ることができます。
例えば私のPCだとデスクトップのスクリーンショットをターミナルに移動するとこんな感じ。
input関数でも、ファイルを持っていくとファイルのフルパスが入力されるので
例えば取得したcsvファイルのフルパスをnumpyのloadtxt関数で読み込ませることができます。(^_^)
そうやって指定すれば、1番上の私のような時間の無駄な現象も起きないでしょう(笑)
実際に使った例
私の体験だとファイルを整理したり・編集したりする時にこのinput関数をよく使わせてもらってます。
たとえば地味に時間がかかっていたpdf編集をPythonで処理した時も
このinput関数を使わせてもらいました。
他にもAIに画像を入力して、なにが映っているか予測させるのも
input関数を使えば、プレゼンだったりデモで相手に魅せることができるでしょう。