Il m'a fallu quelques efforts pour chercher des réponses ici, sur le Web et dans la documentation Python, et tester par moi-même, pour enfin que mes scripts Python fonctionnent correctement sur mes machines Windows (WinXP et Win7). Donc, je viens de bloguer à ce sujet et je le colle ci-dessous au cas où cela serait utile aux autres. Désolé, c'est long, et n'hésitez pas à l'améliorer; Je ne suis pas un expert.
[ MISE À JOUR : Python 3.3 inclut maintenant le lanceur Python pour Windows, qui vous permet de taper py (plutôt que python) pour appeler l'interpréteur par défaut, ou py -2, py -3, py -2.7, etc. Il prend également en charge les lignes shebang , permettant au script lui-même de spécifier. Pour les versions antérieures à 3.3, le lanceur est disponible en téléchargement séparé.
http://docs.python.org/3/whatsnew/3.3.html
]
Exécution de scripts Python sous Windows
Peut-être que vous créez vos propres scripts Python, ou peut-être que quelqu'un vous en a donné un pour faire quelque chose avec vos fichiers de données. Disons que vous avez acquis un script Python et que vous l'avez enregistré dans "D: \ mes scripts \ ApplyRE.py". Vous voulez l'exécuter commodément en double-cliquant dessus ou en le tapant dans la ligne de commande à partir de n'importe quel emplacement, avec la possibilité de lui passer des paramètres comme ceci (-o signifie "écraser le fichier de sortie s'il existe déjà"):
ApplyRE infile.txt outfile.txt -o
Supposons que vous ayez également un fichier de données, "C: \ certains fichiers \ certains lexicon.txt". L'option la plus simple est de déplacer le fichier ou le script pour qu'ils soient au même endroit, mais cela peut devenir compliqué, alors supposons qu'ils resteront séparés.
S'assurer que Windows peut trouver l'interpréteur Python
Après avoir installé Python, vérifiez que la saisie de python dans une invite de commande fonctionne (puis tapez exit () pour sortir de l'interpréteur Python).
C:\>python
Python 3.2 (r32:88445, Feb 20 2011, 21:29:02) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\>
Si cela ne fonctionne pas, vous devrez ajouter quelque chose comme "; C: \ Python32" (sans guillemets) à la variable d'environnement PATH. Voir PATHEXT ci-dessous pour les instructions.
Association de Python avec .py et .pyc
Vérifiez que double-cliquer sur ApplyRE.py l'exécute. (Il devrait également avoir un logo Python comme icône et être étiqueté "Fichier Python", au fait.) Si ce n'est pas déjà fait, cliquez avec le bouton droit sur un fichier .py, choisissez Ouvrir avec, Choisir un programme et cochez "Toujours utiliser ..." Cette association améliore la commodité mais n'est pas strictement nécessaire - vous pouvez spécifier "python" chaque fois que vous souhaitez exécuter un script, comme ceci:
D:\my scripts>python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Voici une variante très spécifique, qui est facultative sauf si vous devez spécifier une version différente de l'interpréteur.
D:\my scripts>c:\python32\python ApplyRE.py lexicon-sample.txt -o
Running... Done.
Mais c'est une douleur. Heureusement, une fois Python installé, dans le PATH, et associé à .py, double-cliquer sur un fichier .py ou le saisir directement comme commande devrait fonctionner correctement. Ici, nous semblons exécuter le script directement - il est simple et agréable de l'exécuter sur un fichier d'exemple qui se trouve dans le dossier "mes scripts" avec le script.
D:\my scripts>ApplyRE.py lexicon-sample.txt -o
Running... Done.
Omettre l'extension .py (modifier PATHEXT)
Pour réduire davantage la saisie, vous pouvez indiquer à Windows que .py (et peut-être les fichiers .pyc) sont exécutables. Pour ce faire, cliquez avec le bouton droit sur Ordinateur et choisissez Propriétés, Avancé, Variables d'environnement, Variables système. Ajoutez "; .PY; .PYC" (sans guillemets) à la variable PATHEXT existante, ou créez-la si vous êtes sûr qu'elle n'existe pas encore. Fermez et rouvrez l'invite de commande. Vous devriez maintenant être en mesure d'omettre le .py (pour info, cela entraînerait l'exécution de ApplyRE.exe ou ApplyRE.bat, s'il en existait un).
D:\my scripts>ApplyRE lexicon-sample.txt -o
Running... Done.
Ajout de scripts au système PATH
Si vous prévoyez d'utiliser vos scripts souvent à partir de l'invite de commande (c'est moins important si vous le faites via l'utilisation de fichiers BAT), vous voudrez alors ajouter le dossier de vos scripts au système PATH. (À côté de PATHEXT, vous devriez voir une variable PATH; ajoutez-y "; D: \ mes scripts", sans guillemets.) De cette façon, vous pouvez exécuter un script à partir d'un autre emplacement sur les fichiers de l'emplacement actuel, comme ceci:
C:\some files>ApplyRE "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
Succès! C'est à peu près tout ce que vous devez faire pour rationaliser la ligne de commande.
Exécuter directement sans modifier le PATH
Si vous êtes un dactylographe rapide ou que cela ne vous dérange pas de créer un fichier de commandes pour chaque situation, vous pouvez spécifier des chemins complets (pour le script ou pour les paramètres) au lieu de modifier PATH.
C:\some files>"d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
Running... Done.
C:\some files>d:
D:\>cd "my scripts"
D:\my scripts>ApplyRE.py "c:\some files\some lexicon.txt" "c:\some files\some lexicon OUT.txt" -o
Running... Done.
Création de raccourcis ou de fichiers batch
Si .py est associé à un Python installé, vous pouvez simplement double-cliquer sur ApplyRE.py pour l'exécuter, mais la console peut apparaître et disparaître trop rapidement pour lire sa sortie (ou échec!). Et pour passer des paramètres, vous devez d'abord effectuer l'une des opérations suivantes. (a) Cliquez avec le bouton droit de la souris et créez un raccourci. Cliquez avec le bouton droit sur le raccourci pour modifier les propriétés et ajouter des paramètres à Target. (b) Créez un fichier de commandes - un fichier texte brut avec un nom distinct tel que ApplyRErun.bat. Cette option est probablement meilleure car vous pouvez lui demander de faire une pause afin que vous puissiez voir la sortie. Voici un exemple de contenu de fichier BAT, écrit pour être localisé et exécuté à partir de c: \ certains fichiers.
python "d:\my scripts\ApplyRE.py" "some lexicon.txt" "some lexicon OUT.txt" -o
pause
Avancé: ajout à PYTHONPATH
Ce n'est généralement pas nécessaire, mais une autre variable d'environnement qui peut être pertinente est PYTHONPATH. Si nous devions ajouter d: \ my scripts à cette variable, d'autres scripts Python situés à d'autres emplacements pourraient les utiliser via des instructions d'importation.