Comment exécuter un script python à partir du shell interactif IDLE?
Ce qui suit génère une erreur:
>>> python helloworld.py
SyntaxError: invalid syntax
python
shell
command-line
python-idle
tshepang
la source
la source
helloworld.py
ressemble?python helloworld.py
dans une fenêtre shell IDLE et que cela ne fonctionne pas.Réponses:
Python3 :
Si votre fichier n'est pas dans le même répertoire:
Voir https://stackoverflow.com/a/437857/739577 pour passer des variables globales / locales.
Dans les versions obsolètes de Python
Fonction intégrée Python2 : execfile
Il ne peut normalement pas être appelé avec des arguments. Mais voici une solution de contournement:
Obsolète depuis 2.6: popen
Avec des arguments:
Utilisation avancée : sous - processus
Avec des arguments:
Lisez la documentation pour plus de détails :-)
Testé avec ce basique
helloworld.py
:la source
exec
pour Python3Vous pouvez utiliser ceci dans python3:
la source
La fenêtre du shell IDLE n'est pas la même chose qu'un shell de terminal (par exemple en cours d'exécution
sh
oubash
). C'est plutôt comme être dans l'interpréteur interactif Python (python -i
). Le moyen le plus simple d'exécuter un script dans IDLE est d'utiliser laOpen
commande duFile
menu (cela peut varier un peu selon la plate-forme que vous exécutez) pour charger votre fichier de script dans une fenêtre d'éditeur IDLE, puis d'utiliser la commandeRun
->Run Module
(raccourci F5).la source
sys.argv
au tout début du programme, par exemple, sous le passe-if __name__ == "__main__"
partout habituel .Run
->Run with Customized...
(raccourci Shift + F5) et une fenêtre contextuelle s'ouvrira où vous pourrez fournir vos arguments. Malheureusement, il ne les mémorise pas actuellement, vous les collerez donc à chaque exécution.Essaye ça
la source
execFile('helloworld.py')
fait le travail pour moi. Une chose à noter est de saisir le nom de répertoire complet du fichier .py s'il ne se trouve pas dans le dossier Python lui-même (au moins c'est le cas sous Windows)Par exemple,
execFile('C:/helloworld.py')
la source
LE PLUS FACILE
la source
Par exemple:
la source
subprocess.call(r'c:\path\to\something.py')
ne fonctionne pas pour moi. OSError: [WinError 193]% 1 n'est pas une application Win32 valideDans Python 3, il n'y a pas de
execFile
. On peut utiliser uneexec
fonction intégrée, par exemple:la source
En IDLE, les travaux suivants: -
Je ne sais pas trop pourquoi cela fonctionne, mais c'est le cas.
la source
Pour exécuter un script python dans un shell python tel que Idle ou dans un shell Django, vous pouvez faire ce qui suit en utilisant la fonction exec (). Exec () exécute un argument d'objet code. Un objet de code en Python est simplement du code Python compilé. Vous devez donc d'abord compiler votre fichier de script, puis l'exécuter en utilisant exec (). Depuis votre shell:
J'utilise Python 3.4. Voir les documents de compilation et d' exécution pour des informations détaillées.
la source
J'ai testé ceci et ça marche un peu:
la source
vous pouvez le faire de deux manières
import file_name
exec(open('file_name').read())
mais assurez-vous que ce fichier doit être stocké là où votre programme est en cours d'exécution
la source
Sur l'environnement Windows, vous pouvez exécuter le fichier py sur la ligne de commande du shell Python3 avec la syntaxe suivante:
Ci-dessous explique comment exécuter un simple fichier helloworld.py à partir de la ligne de commande du shell python
Nous pouvons exécuter ce fichier sur Python3.7 Shell comme ci-dessous:
la source
Il existe une autre alternative (pour Windows) -
la source
Dans une console python, on peut essayer les 2 façons suivantes.
sous le même répertoire de travail,
1. >> importer helloworld
# si vous avez une variable x , vous pouvez l'imprimer en IDLE.
>> helloworld.x
# si vous avez une fonction func , vous pouvez également l'appeler comme ceci.
>> helloworld.func ()
2. >> runfile ("./ helloworld.py")
la source