Pythonプログラミングでファイルをドラッグ&ドロップでフルパスを取得する

Pythonプログラミングでファイルをドラッグ&ドロップでフルパスを取得しようと思いました。

使用している環境はWindowsでPython 3.13です。

pyファイルにファイルをドラッグ&ドロップ

以下の内容のPythonスクリプトファイル(pyファイル)を作成しました。

test10.py : 動作確認用ファイル

python

import time
import sys

val = sys.argv[1]
print(val)

print("この画面は30秒間表示されます。")
time.sleep(30)

ファイルtest.txtをドラッグ&ドロップし、test10.pyを実行させました。

実行結果はこのように表示されます。

CLI

W:\projects\python\test\test10\test.txt
この画面は30秒間表示されます。

コマンドライン引数のsys.argv[1]を使用するとtest.pyにドラッグ&ドロップされたファイルのパスが取得できました。

sys.argv[1]はsysモジュールが必要なのでimport sysを記述します。

time.sleep()で指定した秒数の30秒間ほど画面が表示されたままになり、その後閉じます。

pyファイル実行中のCUI画面にファイルをドラッグ&ドロップ

以下の内容のPythonスクリプトファイル(pyファイル)を作成しました。

exdef.py : 自作関数ファイル

python

def filein():
    print("ファイルを画面上にドラッグアンドドロップしてEnterしてください")
    filename = input()
    #print(filename)    
    return filename

test8.py : 動作確認用ファイル

python

import time
import exdef

val = exdef.filein()
print(val)

print("この画面は30秒間表示されます。")
time.sleep(30)

pyファイル実行中のCUI画面にファイルtest.txtをドラッグ&ドロップしてEnterキーを押しました。

実行結果はこのように表示されました。

CLI

ファイルを画面上にドラッグアンドドロップしてEnterしてください
W:\projects\python\test\test8\test.txt
W:\projects\python\test\test8\test.txt
この画面は30秒間表示されます。

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