Je souhaite obtenir le chemin d'accès au fichier en tant qu'entrée dans mon application de console Python.
Actuellement, je ne peux demander qu'un chemin complet en tant qu'entrée dans la console.
Existe-t-il un moyen de déclencher une interface utilisateur simple dans laquelle les utilisateurs peuvent sélectionner un fichier au lieu de saisir le chemin complet?
Que diriez-vous d'utiliser tkinter?
from Tkinter import Tk
from tkinter.filedialog import askopenfilename
Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
filename = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filename)
Terminé!
La version Python 3.x de la réponse d'Etaoin pour être complet:
from tkinter.filedialog import askopenfilename
filename = askopenfilename()
Utilisez le module tkFileDialog qui fait partie de l’installation standard.
import tkFileDialog
print tkFileDialog.askopenfilename()
Zenity est une autre option à considérer: http://freecode.com/projects/zenity .
Dans une situation où je développais une application serveur Python (aucun composant d'interface graphique), je ne voulais donc pas introduire de dépendance sur les kits d'outils d'interface graphique python, mais je voulais mes scripts de débogage doivent être paramétrés par les fichiers d'entrée et voulus visuellement Demander à l'utilisateur un fichier s'il ne le spécifie pas sur la ligne de commande. Zenity était un ajustement parfait. Pour ce faire, appelez "zenity --file-selection" à l'aide du module de sous-processus et capturez la sortie standard. Bien sûr, cette solution n'est pas spécifique à Python.
Zenity prend en charge plusieurs plates-formes et a déjà été installé sur nos serveurs de développement. Il a donc facilité notre débogage/développement sans introduire de dépendance indésirable.