logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 31-08-2016 21:13:20

francois
Membre
Distrib. : debian 9
Inscription : 21-03-2016

[résolu]lancer un programe en ligne de commande sous python

Bonsoir

j'essaie de lancer un scripte sous python en ligne de commande mais ça me donne le message suivant :

root@debian:/home/francois# ! /home/francois/helloworld.py
/home/francois/helloworld.py: ligne 1: erreur de syntaxe près du symbole inattendu « ( »
/home/francois/helloworld.py: ligne 1: `Python 2.7.9 (default, Mar  1 2015, 18:22:53) '


mon script est le suivant :

Python 2.7.9 (default, Mar  1 2015, 18:22:53)
[GCC 4.9.2] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> print ("Hello world!")

J'ai pensé que l'erreur venait peut-être de la ligne N°1...les parenthèses du "Hello world" qui pouvaient poser problème....mais même en les enlevant le message d'erreur est le même !

Merci d'avance !

Dernière modification par francois (31-08-2016 22:07:34)

Hors ligne

#2 31-08-2016 21:26:07

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : [résolu]lancer un programe en ligne de commande sous python

tu veux dire que si tu fais

cat /home/francois/helloworld.py


tu obtiens

Python 2.7.9 (default, Mar  1 2015, 18:22:53)
[GCC 4.9.2] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> print ("Hello world!")
 



??

et si ton script ressenblait à

#!/usr/bin/python
print ("Hello world!")



je pense qu'il fonctionnerait (enfin il me semble tongue)

Hors ligne

#3 31-08-2016 21:54:59

francois
Membre
Distrib. : debian 9
Inscription : 21-03-2016

Re : [résolu]lancer un programe en ligne de commande sous python

Severian a écrit :

tu veux dire que si tu fais

cat /home/francois/helloworld.py


tu obtiens

Python 2.7.9 (default, Mar  1 2015, 18:22:53)
[GCC 4.9.2] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> print ("Hello world!")
 



??

et si ton script ressenblait à

#!/usr/bin/python
print ("Hello world!")



je pense qu'il fonctionnerait (enfin il me semble tongue)




Oui en effet en fait ça fonctionne ! en fait le "code]Python 2.7.9 (default, Mar  1 2015, 18:22:53)
[GCC 4.9.2] on linux2
Type "copyright", "credits" or "license()" for more information" génère une erreur ....

Merci pour tout !

Dernière modification par francois (31-08-2016 22:06:28)

Hors ligne

#4 27-12-2016 19:06:08

guillaumebs
Membre
Distrib. : debian
Noyau : linux 3.16.0-4-amd64
(G)UI : icewm + zsh
Inscription : 25-12-2016

Re : [résolu]lancer un programe en ligne de commande sous python

francois a écrit :

ome/francois# ! /home/francois/helloworld.py
/home/francois/helloworld.py: ligne 1: erreur de syntaxe près du symbole inattendu « ( »
/home/francois/helloworld.py: lign



ce n'est pas un code mais python en mode "console" qui te permet d'executer des commandes python en temps-réel.
Tu lances la console python en appellant ton interpréteur sans lui donner de script à manger:


python
 



Pour ma part je trouve que c'est pratiquement inutilisable car python est basé sur l'indentation et au bout de deux indentations en mode console, on ne sait déjà plus où on habite. Bref, passer rapidement au scripting à part entière.. qu'on execute avec


python mon_script.py
 



pour les bo-goss qui trouvent que "python mon_script.py" c'est trop long, tu peux préciser l'interpréteur à utiliser en inscrivant une 1ère ligne qui ressemble à ça


#! /bin/python2.7
#! /bin/python3.5
#! /usr/bin/env python
 



et tu peux alors faire


chmod +x mon_script.py
./mon_script.py
 



pour info, "#!" on appelle ça le shebang

Dernière modification par guillaumebs (27-12-2016 19:08:38)

Hors ligne

Pied de page des forums