Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes.
J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..)
Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas
trouvé :
comment on crée un programme qui tourne sous toutes les platforms ?
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec
des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé
comment on fait pour Linux ou Mac ?
Est-ce-qu'il faut toujours une console python pour les faire tourner ou bien
est-ce-qu'on peut créer des exécutables simples ?
Merci d'avance pour vos réponses ou vos pistes de lecture
comment on crée un programme qui tourne sous toutes les platforms ? J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé comment on fait pour Linux ou Mac ?
Il faudrait pour cela dans un premier temps que tu ne fasse que des actions faisable sur toutes les plateformes.
Sinon,
print "hello world"
Dans un fichier fonctionne sur toutes les plateformes ou il y a un python.
Est-ce-qu'il faut toujours une console python pour les faire tourner ou bien est-ce-qu'on peut créer des exécutables simples ? Merci d'avance pour vos réponses ou vos pistes de lecture
Je ne les utilise pas, mais il me semble que pour Linux, on peut byte-compiler le script python et ainsi le lancer en tant que simple "executable".
Mais je pense que pour "s'assurer" que le code tournera sur tout où il y a python, il suffit de distribuer le programme avec les sources (si les sources ont été concues portables bien sûr)...
comment on crée un programme qui tourne sous toutes les platforms ?
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec
des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé
comment on fait pour Linux ou Mac ?
Il faudrait pour cela dans un premier temps que tu ne fasse que des
actions faisable sur toutes les plateformes.
Sinon,
print "hello world"
Dans un fichier fonctionne sur toutes les plateformes ou il y a un python.
Est-ce-qu'il faut toujours une console python pour les faire tourner ou
bien est-ce-qu'on peut créer des exécutables simples ? Merci d'avance
pour vos réponses ou vos pistes de lecture
Je ne les utilise pas, mais il me semble que pour Linux, on peut
byte-compiler le script python et ainsi le lancer en tant que simple
"executable".
Mais je pense que pour "s'assurer" que le code tournera sur tout où il y a
python, il suffit de distribuer le programme avec les sources (si les
sources ont été concues portables bien sûr)...
comment on crée un programme qui tourne sous toutes les platforms ? J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé comment on fait pour Linux ou Mac ?
Il faudrait pour cela dans un premier temps que tu ne fasse que des actions faisable sur toutes les plateformes.
Sinon,
print "hello world"
Dans un fichier fonctionne sur toutes les plateformes ou il y a un python.
Est-ce-qu'il faut toujours une console python pour les faire tourner ou bien est-ce-qu'on peut créer des exécutables simples ? Merci d'avance pour vos réponses ou vos pistes de lecture
Je ne les utilise pas, mais il me semble que pour Linux, on peut byte-compiler le script python et ainsi le lancer en tant que simple "executable".
Mais je pense que pour "s'assurer" que le code tournera sur tout où il y a python, il suffit de distribuer le programme avec les sources (si les sources ont été concues portables bien sûr)...
Il faudrait pour cela dans un premier temps que tu ne fasse que des actions faisable sur toutes les plateformes.
Comment je peux le savoir, si je n'utilise ni mac ni Linux ?
Mais je pense que pour "s'assurer" que le code tournera sur tout où il y a python, il suffit de distribuer le programme avec les sources (si les sources ont été concues portables bien sûr)... Même question : comment je fais pour savoir quelles instructions sont
portables ?
"R12y" a écrit
Il faudrait pour cela dans un premier temps que tu ne fasse que des
actions faisable sur toutes les plateformes.
Comment je peux le savoir, si je n'utilise ni mac ni Linux ?
Mais je pense que pour "s'assurer" que le code tournera sur tout où il y a
python, il suffit de distribuer le programme avec les sources (si les
sources ont été concues portables bien sûr)...
Même question : comment je fais pour savoir quelles instructions sont
Il faudrait pour cela dans un premier temps que tu ne fasse que des actions faisable sur toutes les plateformes.
Comment je peux le savoir, si je n'utilise ni mac ni Linux ?
Mais je pense que pour "s'assurer" que le code tournera sur tout où il y a python, il suffit de distribuer le programme avec les sources (si les sources ont été concues portables bien sûr)... Même question : comment je fais pour savoir quelles instructions sont
portables ?
R12y
On Wed, 19 Apr 2006 21:53:43 +0200, Bibi F wrote:
Même question : comment je fais pour savoir quelles instructions sont portables ?
En lisant la doc de ce que tu utilise. en général c'est écrit quand c'est Unix-Only, ou Windows-Only.
Bonsoir, Perso j'utilise Windows et Linux. Bibi F wrote:
Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes. J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..) Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas trouvé : comment on crée un programme qui tourne sous toutes les platforms ? Une partie des problèmes est réglée si tu prends os.sep comme séparateur
dans les paths de fichiers et si tu teste os.name qui te donne le nom de l'os sur lequel tourne ('nt', 'posix', etc). Il reste le jeu de caractères qui oblige souvent à mettre un truc du style # -*- coding: iso-8859-1 -*- en ligne 1 ou 2, plus un éventuel 'chaine.decode('iso-8859-1')' pour afficher 'chaine' correctement.
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé comment on fait pour Linux ou Mac ? Le problème ne se pose pas trop. Créer un exe est utile sous windows car
ça évite de déployer python. Tu déploies juste ton exe (et le bazar qui va avec) et tout va bien. Python est toujours installé par défaut sur la plupart des distributions linux courantes (Debian, Ubuntu, RH, Mandriva) et dans une version récente ; tu peux donc lancer ton script tel que ; il reste à surveiller la présence/installation des packages non standards que tu utilises éventuellement. Pour mac, je ne sais pas.
Est-ce-qu'il faut toujours une console python pour les faire tourner ou bien est-ce-qu'on peut créer des exécutables simples ? Tu mets #!/usr/bin/python en ligne 1 et Linux sait que c'est du python.
Il faut aussi flagger le fichier comme exécutable (chmod +x fichier)
Merci d'avance pour vos réponses ou vos pistes de lecture A+
jm
Bonsoir,
Perso j'utilise Windows et Linux.
Bibi F wrote:
Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes.
J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..)
Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas
trouvé :
comment on crée un programme qui tourne sous toutes les platforms ?
Une partie des problèmes est réglée si tu prends os.sep comme séparateur
dans les paths de fichiers et si tu teste os.name qui te donne le nom de
l'os sur lequel tourne ('nt', 'posix', etc).
Il reste le jeu de caractères qui oblige souvent à mettre un truc du
style # -*- coding: iso-8859-1 -*- en ligne 1 ou 2, plus un éventuel
'chaine.decode('iso-8859-1')' pour afficher 'chaine' correctement.
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec
des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé
comment on fait pour Linux ou Mac ?
Le problème ne se pose pas trop. Créer un exe est utile sous windows car
ça évite de déployer python. Tu déploies juste ton exe (et le bazar qui
va avec) et tout va bien.
Python est toujours installé par défaut sur la plupart des distributions
linux courantes (Debian, Ubuntu, RH, Mandriva) et dans une version
récente ; tu peux donc lancer ton script tel que ; il reste à surveiller
la présence/installation des packages non standards que tu utilises
éventuellement. Pour mac, je ne sais pas.
Est-ce-qu'il faut toujours une console python pour les faire tourner ou bien
est-ce-qu'on peut créer des exécutables simples ?
Tu mets #!/usr/bin/python en ligne 1 et Linux sait que c'est du python.
Il faut aussi flagger le fichier comme exécutable (chmod +x fichier)
Merci d'avance pour vos réponses ou vos pistes de lecture
A+
Bonsoir, Perso j'utilise Windows et Linux. Bibi F wrote:
Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes. J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..) Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas trouvé : comment on crée un programme qui tourne sous toutes les platforms ? Une partie des problèmes est réglée si tu prends os.sep comme séparateur
dans les paths de fichiers et si tu teste os.name qui te donne le nom de l'os sur lequel tourne ('nt', 'posix', etc). Il reste le jeu de caractères qui oblige souvent à mettre un truc du style # -*- coding: iso-8859-1 -*- en ligne 1 ou 2, plus un éventuel 'chaine.decode('iso-8859-1')' pour afficher 'chaine' correctement.
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec des dll et w9xpopen, ce qui me paraît lourd..), mais je n'ai pas trouvé comment on fait pour Linux ou Mac ? Le problème ne se pose pas trop. Créer un exe est utile sous windows car
ça évite de déployer python. Tu déploies juste ton exe (et le bazar qui va avec) et tout va bien. Python est toujours installé par défaut sur la plupart des distributions linux courantes (Debian, Ubuntu, RH, Mandriva) et dans une version récente ; tu peux donc lancer ton script tel que ; il reste à surveiller la présence/installation des packages non standards que tu utilises éventuellement. Pour mac, je ne sais pas.
Est-ce-qu'il faut toujours une console python pour les faire tourner ou bien est-ce-qu'on peut créer des exécutables simples ? Tu mets #!/usr/bin/python en ligne 1 et Linux sait que c'est du python.
Il faut aussi flagger le fichier comme exécutable (chmod +x fichier)
Merci d'avance pour vos réponses ou vos pistes de lecture A+
jm
R12y
On Thu, 20 Apr 2006 01:55:00 +0200, Bruno Desthuilliers wrote:
est-ce-qu'on peut créer des exécutables simples ? C'est quoi un "exécutable simple" ?
Je dirais qu'il entend par là un binaire unique (et statique) sur lequel il suffirait de double-cliquer.
Merci à tous. A c'est dur de se faire comprendre quand on n'est pas un pro. Quand je disais une "console python" je voulais dire l'interpréteur python. Et pour l'exécutable simple, R12y a bien compris : un fichier unique, avec extension .exe sur lequel on fait un double clic.. Désolé, je suis un utilisateur de winXX et connais très peu les autres plate-formes.
je pense avoir suffisamment d'infos maintenant. Il faut simplement que je relise correctement vos posts.
Merci à tous.
A c'est dur de se faire comprendre quand on n'est pas un pro. Quand je
disais une "console python" je voulais dire l'interpréteur python. Et pour
l'exécutable simple, R12y a bien compris : un fichier unique, avec extension
.exe sur lequel on fait un double clic..
Désolé, je suis un utilisateur de winXX et connais très peu les autres
plate-formes.
je pense avoir suffisamment d'infos maintenant. Il faut simplement que je
relise correctement vos posts.
Merci à tous. A c'est dur de se faire comprendre quand on n'est pas un pro. Quand je disais une "console python" je voulais dire l'interpréteur python. Et pour l'exécutable simple, R12y a bien compris : un fichier unique, avec extension .exe sur lequel on fait un double clic.. Désolé, je suis un utilisateur de winXX et connais très peu les autres plate-formes.
je pense avoir suffisamment d'infos maintenant. Il faut simplement que je relise correctement vos posts.
R12y
On Thu, 20 Apr 2006 00:09:09 +0200, Bibi F wrote:
R12y a bien compris : un fichier unique, avec extension .exe sur lequel on fait un double clic.. Désolé, je suis un utilisateur de winXX et connais très peu les autres plate-formes.
Eh bien sache que ce n'est pas comme cela que ça se passe sur "les autres plateformes" Par exemple, sous Unix-Like tu gagnerais à avoir un truc "autotoolé". Moi ce que je te conseille c'est de plutot favoriser la "conformité" pour Unix-like, ça sera facile d'en faire un binaire pour Windows ensuite. La démarche inverse n'est pas ausi facile.... loin de la.
Par exemple, ce projet: http://v2v.cc/~j/ffmpeg2theora/download.html (Il n'est pas en python mais en C) Il est conforme aux autotools. Et comme tu vois il y a un executable Linux, Windows et autres...
Il y en a plein des comme lui: http://v2v.cc/~j/ffmpeg2theora/download.html http://download.openoffice.org/2.0.2/index.html
ah .... et quelques uns en python que j'ai failli oublier: http://www.zope.org/Products/Zope/2.9.2 http://plone.org/products/plone http://www.cps-project.org/sections/downloads
Les autotools: http://www-src.lip6.fr/homepages/Alexandre.Duret-Lutz/autotools.html Et je projette dans un avenir proche d'en faire un en Français.
On est un peu sorti du sujet initial, mais je pense que c'était nécessaire de dire ça. Voilà.
R12y a bien compris : un fichier unique, avec extension
.exe sur lequel on fait un double clic..
Désolé, je suis un utilisateur de winXX et connais très peu les autres
plate-formes.
Eh bien sache que ce n'est pas comme cela que ça se passe sur "les autres
plateformes"
Par exemple, sous Unix-Like tu gagnerais à avoir un truc "autotoolé".
Moi ce que je te conseille c'est de plutot favoriser la "conformité" pour
Unix-like, ça sera facile d'en faire un binaire pour Windows ensuite.
La démarche inverse n'est pas ausi facile.... loin de la.
Par exemple, ce projet:
http://v2v.cc/~j/ffmpeg2theora/download.html
(Il n'est pas en python mais en C)
Il est conforme aux autotools.
Et comme tu vois il y a un executable Linux, Windows et autres...
Il y en a plein des comme lui:
http://v2v.cc/~j/ffmpeg2theora/download.html
http://download.openoffice.org/2.0.2/index.html
ah .... et quelques uns en python que j'ai failli oublier:
http://www.zope.org/Products/Zope/2.9.2
http://plone.org/products/plone
http://www.cps-project.org/sections/downloads
Les autotools:
http://www-src.lip6.fr/homepages/Alexandre.Duret-Lutz/autotools.html
Et je projette dans un avenir proche d'en faire un en Français.
On est un peu sorti du sujet initial, mais je pense que c'était nécessaire
de dire ça. Voilà.
R12y a bien compris : un fichier unique, avec extension .exe sur lequel on fait un double clic.. Désolé, je suis un utilisateur de winXX et connais très peu les autres plate-formes.
Eh bien sache que ce n'est pas comme cela que ça se passe sur "les autres plateformes" Par exemple, sous Unix-Like tu gagnerais à avoir un truc "autotoolé". Moi ce que je te conseille c'est de plutot favoriser la "conformité" pour Unix-like, ça sera facile d'en faire un binaire pour Windows ensuite. La démarche inverse n'est pas ausi facile.... loin de la.
Par exemple, ce projet: http://v2v.cc/~j/ffmpeg2theora/download.html (Il n'est pas en python mais en C) Il est conforme aux autotools. Et comme tu vois il y a un executable Linux, Windows et autres...
Il y en a plein des comme lui: http://v2v.cc/~j/ffmpeg2theora/download.html http://download.openoffice.org/2.0.2/index.html
ah .... et quelques uns en python que j'ai failli oublier: http://www.zope.org/Products/Zope/2.9.2 http://plone.org/products/plone http://www.cps-project.org/sections/downloads
Les autotools: http://www-src.lip6.fr/homepages/Alexandre.Duret-Lutz/autotools.html Et je projette dans un avenir proche d'en faire un en Français.
On est un peu sorti du sujet initial, mais je pense que c'était nécessaire de dire ça. Voilà.
Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes. J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..) Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas trouvé : comment on crée un programme qui tourne sous toutes les platforms ?
Généralement, en n'utilisant pas de fonctionnalités spécifiques à une plateforme donnée, et en utilisant des couches d'abstraction pour masquer les différences (exemple : les modules os et os.path).
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec des dll et w9xpopen, ce qui me paraît lourd..),
Je ne vois pas le rapport ? Py2exe est fait pour simplifier le déploiement d'une application Python sous Windows, c'est tout.
mais je n'ai pas trouvé comment on fait pour Linux ou Mac ?
Comment on fait quoi ? Déployer une appli Python ? Sous Linux, il y a beaucoups de solutions, la plus simple étant un tarball avec les sources du projet et un script d'install.
Est-ce-qu'il faut toujours une console python pour les faire tourner
C'est quoi une "console Python" ?
ou bien est-ce-qu'on peut créer des exécutables simples ?
C'est quoi un "exécutable simple" ?
Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes.
J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..)
Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas
trouvé :
comment on crée un programme qui tourne sous toutes les platforms ?
Généralement, en n'utilisant pas de fonctionnalités spécifiques à une
plateforme donnée, et en utilisant des couches d'abstraction pour
masquer les différences (exemple : les modules os et os.path).
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec
des dll et w9xpopen, ce qui me paraît lourd..),
Je ne vois pas le rapport ? Py2exe est fait pour simplifier le
déploiement d'une application Python sous Windows, c'est tout.
mais je n'ai pas trouvé
comment on fait pour Linux ou Mac ?
Comment on fait quoi ? Déployer une appli Python ? Sous Linux, il y a
beaucoups de solutions, la plus simple étant un tarball avec les sources
du projet et un script d'install.
Est-ce-qu'il faut toujours une console python pour les faire tourner
C'est quoi une "console Python" ?
ou bien
est-ce-qu'on peut créer des exécutables simples ?
Je suis interessé par Python parce-qu'il tourne sous plusieurs plate-formes. J'ai donc lu tout ce que j'ai pu trouver (le langage, les outils etc..) Seulement avant de me lancer j'aimerais comprendre un truc que je n'ai pas trouvé : comment on crée un programme qui tourne sous toutes les platforms ?
Généralement, en n'utilisant pas de fonctionnalités spécifiques à une plateforme donnée, et en utilisant des couches d'abstraction pour masquer les différences (exemple : les modules os et os.path).
J'ai bien vu py2exe qui permet de créer des exécutables pour windows (avec des dll et w9xpopen, ce qui me paraît lourd..),
Je ne vois pas le rapport ? Py2exe est fait pour simplifier le déploiement d'une application Python sous Windows, c'est tout.
mais je n'ai pas trouvé comment on fait pour Linux ou Mac ?
Comment on fait quoi ? Déployer une appli Python ? Sous Linux, il y a beaucoups de solutions, la plus simple étant un tarball avec les sources du projet et un script d'install.
Est-ce-qu'il faut toujours une console python pour les faire tourner
C'est quoi une "console Python" ?
ou bien est-ce-qu'on peut créer des exécutables simples ?
C'est quoi un "exécutable simple" ?
bruno at modulix
Bibi F wrote:
Merci à tous. A c'est dur de se faire comprendre quand on n'est pas un pro.
Et oui... Tout métier a son jargon - et la programmation est probablement un des métiers les plus "jargonnant" !-)
Quand je disais une "console python" je voulais dire l'interpréteur python.
L'interpréteur est une chose, le "shell" python (le programme en mode texte permettant d'exécuter du code de façon interactive) en est une autre.
Le premier est bien entendu indispensable pour exécuter un programme Python (de même que la VM Java pour un programme en Java, ou le 'runtime' VB6 pour une appli VB6, etc...). Ce que font des appli comme py2exe est juste d'"emballer" avec ton appli l'interpréteur et les bibliothèque nécessaires.
Le terme de "console" vient de l'époque d'avant les PC, et désigne originellement un terminal informatique passif. Avec les PC, le terme de "console" en est venu à désigner les émulateurs de terminaux et les shells en mode texte, puis, avec l'apparition des environnements graphiques, la fenêtre accueillant un shell en mode texte.
Et pour l'exécutable simple, R12y a bien compris : un fichier unique, avec extension .exe sur lequel on fait un double clic..
Je l'avais bien compris - ma question visait à *te* faire te demander si *tu* avais bien compris de quoi il retournait !-)
Les ".exe" sont une spécificité DOS/Windows. Accessoirement, une appli Windows est *très* rarement constituée d'un unique fichier exécutable - il y a généralement toute une floppée de bibliothèques (.dll) et autres ressources nécessaires au fonctionnement de l'appli. Pour pas mal de langages, le '.exe' n'est en fait rien d'autre qu'un "lanceur" - l'essentiel du code est ailleurs.
Sérieusement, tu connais beaucoup d'applis Windows qui soient constituées d'un seul et unique fichier .exe ? Moi pas...
Quand au fait de lancer une appli "par un double-clic", c'est sans grand rapport avec le fait que cette appli soit entièrement contenue dans un unique fichier avec l'extension '.exe'. Normalement, sous Windows, un fichier .pyw peut aussi être exécuté de cette façon - à condition bien sûr que l'interpréteur Python soit installé sur la machine...
Sur d'autres plateformes, on obtient le même résultat par des moyens différents, spécifiques à la plateforme - voire, sous *n*x, au gestionnaire de bureau utilisé (Gnome, KDE, etc...). En tout état de cause, à part quelques scripts très simples, une appli est rarement constituée d'un seul fichier - d'où l'utilisation de programmes gérant l'empaquetage et le déploiement.
Désolé, je suis un utilisateur de winXX et connais très peu les autres plate-formes.
Je l'avais bien compris. Je dirais même que tu connais peu Windows lui-même... Pas d'offense, on est tous passés par là - enfin moi j'y sois passé, et j'ai eu du mal à m'y retrouver au début !-)
Plus concrètement, je pense que tu t'embêtes pour pas grand chose. Commence déjà par écrire un programme - en tenant compte des problèmes de portabilité si tu souhaite qu'il tourne sur d'autres plateformes -, tu verra le problème du déploiement quand tu aura quelque chose à déployer.
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
Bibi F wrote:
Merci à tous.
A c'est dur de se faire comprendre quand on n'est pas un pro.
Et oui... Tout métier a son jargon - et la programmation est
probablement un des métiers les plus "jargonnant" !-)
Quand je
disais une "console python" je voulais dire l'interpréteur python.
L'interpréteur est une chose, le "shell" python (le programme en mode
texte permettant d'exécuter du code de façon interactive) en est une autre.
Le premier est bien entendu indispensable pour exécuter un programme
Python (de même que la VM Java pour un programme en Java, ou le
'runtime' VB6 pour une appli VB6, etc...). Ce que font des appli comme
py2exe est juste d'"emballer" avec ton appli l'interpréteur et les
bibliothèque nécessaires.
Le terme de "console" vient de l'époque d'avant les PC, et désigne
originellement un terminal informatique passif. Avec les PC, le terme de
"console" en est venu à désigner les émulateurs de terminaux et les
shells en mode texte, puis, avec l'apparition des environnements
graphiques, la fenêtre accueillant un shell en mode texte.
Et pour
l'exécutable simple, R12y a bien compris : un fichier unique, avec extension
.exe sur lequel on fait un double clic..
Je l'avais bien compris - ma question visait à *te* faire te demander si
*tu* avais bien compris de quoi il retournait !-)
Les ".exe" sont une spécificité DOS/Windows. Accessoirement, une appli
Windows est *très* rarement constituée d'un unique fichier exécutable -
il y a généralement toute une floppée de bibliothèques (.dll) et autres
ressources nécessaires au fonctionnement de l'appli. Pour pas mal de
langages, le '.exe' n'est en fait rien d'autre qu'un "lanceur" -
l'essentiel du code est ailleurs.
Sérieusement, tu connais beaucoup d'applis Windows qui soient
constituées d'un seul et unique fichier .exe ? Moi pas...
Quand au fait de lancer une appli "par un double-clic", c'est sans grand
rapport avec le fait que cette appli soit entièrement contenue dans un
unique fichier avec l'extension '.exe'. Normalement, sous Windows, un
fichier .pyw peut aussi être exécuté de cette façon - à condition bien
sûr que l'interpréteur Python soit installé sur la machine...
Sur d'autres plateformes, on obtient le même résultat par des moyens
différents, spécifiques à la plateforme - voire, sous *n*x, au
gestionnaire de bureau utilisé (Gnome, KDE, etc...). En tout état de
cause, à part quelques scripts très simples, une appli est rarement
constituée d'un seul fichier - d'où l'utilisation de programmes gérant
l'empaquetage et le déploiement.
Désolé, je suis un utilisateur de winXX et connais très peu les autres
plate-formes.
Je l'avais bien compris. Je dirais même que tu connais peu Windows
lui-même... Pas d'offense, on est tous passés par là - enfin moi j'y
sois passé, et j'ai eu du mal à m'y retrouver au début !-)
Plus concrètement, je pense que tu t'embêtes pour pas grand chose.
Commence déjà par écrire un programme - en tenant compte des problèmes
de portabilité si tu souhaite qu'il tourne sur d'autres plateformes -,
tu verra le problème du déploiement quand tu aura quelque chose à déployer.
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb@xiludom.gro'.split('@')])"
Merci à tous. A c'est dur de se faire comprendre quand on n'est pas un pro.
Et oui... Tout métier a son jargon - et la programmation est probablement un des métiers les plus "jargonnant" !-)
Quand je disais une "console python" je voulais dire l'interpréteur python.
L'interpréteur est une chose, le "shell" python (le programme en mode texte permettant d'exécuter du code de façon interactive) en est une autre.
Le premier est bien entendu indispensable pour exécuter un programme Python (de même que la VM Java pour un programme en Java, ou le 'runtime' VB6 pour une appli VB6, etc...). Ce que font des appli comme py2exe est juste d'"emballer" avec ton appli l'interpréteur et les bibliothèque nécessaires.
Le terme de "console" vient de l'époque d'avant les PC, et désigne originellement un terminal informatique passif. Avec les PC, le terme de "console" en est venu à désigner les émulateurs de terminaux et les shells en mode texte, puis, avec l'apparition des environnements graphiques, la fenêtre accueillant un shell en mode texte.
Et pour l'exécutable simple, R12y a bien compris : un fichier unique, avec extension .exe sur lequel on fait un double clic..
Je l'avais bien compris - ma question visait à *te* faire te demander si *tu* avais bien compris de quoi il retournait !-)
Les ".exe" sont une spécificité DOS/Windows. Accessoirement, une appli Windows est *très* rarement constituée d'un unique fichier exécutable - il y a généralement toute une floppée de bibliothèques (.dll) et autres ressources nécessaires au fonctionnement de l'appli. Pour pas mal de langages, le '.exe' n'est en fait rien d'autre qu'un "lanceur" - l'essentiel du code est ailleurs.
Sérieusement, tu connais beaucoup d'applis Windows qui soient constituées d'un seul et unique fichier .exe ? Moi pas...
Quand au fait de lancer une appli "par un double-clic", c'est sans grand rapport avec le fait que cette appli soit entièrement contenue dans un unique fichier avec l'extension '.exe'. Normalement, sous Windows, un fichier .pyw peut aussi être exécuté de cette façon - à condition bien sûr que l'interpréteur Python soit installé sur la machine...
Sur d'autres plateformes, on obtient le même résultat par des moyens différents, spécifiques à la plateforme - voire, sous *n*x, au gestionnaire de bureau utilisé (Gnome, KDE, etc...). En tout état de cause, à part quelques scripts très simples, une appli est rarement constituée d'un seul fichier - d'où l'utilisation de programmes gérant l'empaquetage et le déploiement.
Désolé, je suis un utilisateur de winXX et connais très peu les autres plate-formes.
Je l'avais bien compris. Je dirais même que tu connais peu Windows lui-même... Pas d'offense, on est tous passés par là - enfin moi j'y sois passé, et j'ai eu du mal à m'y retrouver au début !-)
Plus concrètement, je pense que tu t'embêtes pour pas grand chose. Commence déjà par écrire un programme - en tenant compte des problèmes de portabilité si tu souhaite qu'il tourne sur d'autres plateformes -, tu verra le problème du déploiement quand tu aura quelque chose à déployer.
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"