#1 Le 29/06/2011, à 15:37
- rasobak
Besoin explication : Python et Java
Bonjour à tous et à toutes,
j'aimerais savoir pourquoi Python est plus lent que Java.
Est-ce que c'est fausse ? y a t'il un moyen d'optimiser Python ?
Merci a tous et a toutes
Dernière modification par rasobak (Le 29/06/2011, à 16:05)
Hors ligne
#2 Le 29/06/2011, à 16:07
- Jules Petibidon
Re : Besoin explication : Python et Java
Est ce que cette affirmation est fausse : Probablement pas, mais quelque part on s'en tamponne.
La vocation des deux langages est pas la même.
Code en java, code en python, ça n'a pas grand chose à voir.
Python est fait pour développer des petits trucs (enfin pas toujours si petits que ça) vite fait bien fait, alors que Java est plus adapté pour des projets plus lourds.
Hors ligne
#3 Le 29/06/2011, à 16:56
- rasobak
Re : Besoin explication : Python et Java
Merci de ta reponse
j'ai une dernière question :
Ma vocation est le réseau ( application réseau et Web ) le Python serais plus adapter ?
Dernière modification par rasobak (Le 29/06/2011, à 17:16)
Hors ligne
#4 Le 29/06/2011, à 17:29
- Jules Petibidon
Re : Besoin explication : Python et Java
Tout dépend de ton application
Les deux peuvent correspondre.
Hors ligne
#5 Le 29/06/2011, à 17:42
- rasobak
Re : Besoin explication : Python et Java
J'essaye les 2 et je verrais celui qui correspond le mieux
Hors ligne
#6 Le 13/07/2011, à 18:55
- Behind
Re : Besoin explication : Python et Java
Java lui est un langage "compilé" c'est à dire que pour lui il y a un byte-code qui ensuite génère un fichier que seul le PC comprend, du 01001100.....De tout le programme que tu as fait. Si tu veux tu as un bloc de "langage machine" pour tout ton programme.
Python lui n'est pas un langage "compilé", c'est un langage "interprété" et la différence tient au fait que le "langage machine" est généré au fur et à mesure de la lecture du programme. Non compilé au préalable.
Quand à la différence de vitesse.. Je pense que ça peut jouer mais je ne suis sûre de rien.
Cordialement
Administrateur Informatique de la Corporation des Etudiants en Médecine de Paris VI.
"On rit mal des autres, quand on ne sait pas d'abord rire de soi-même."
Quad Core Q9950 2.83 ghz | Double écran 19"*24"
4 go DDR3 G.Skill | 8800 GT 512 mo
Hors ligne
#7 Le 14/07/2011, à 08:17
- bipede
Re : Besoin explication : Python et Java
Python produit du bytecode au premier lancement du script, et à chaque fois qu'il y a modification de ce même script. Ensuite, c'est le bytecode qui est interprété.
C'est cette pseudo-compilation dynamique qui le différencie de Java.
Sinon, Java comme Python sont des langages interprétés, et python n'est pas moins rapide que Java.
J'ajoute qu'il n'y a aucun projet Java qu'on ne puisse réaliser en python...
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#8 Le 14/07/2011, à 11:50
- Jules Petibidon
Re : Besoin explication : Python et Java
Sinon, Java comme Python sont des langages interprétés, et python n'est pas moins rapide que Java.
Tu es certain de cela ? Une VM et un interpréteur c'est pas tout à fait la même chose tout de même.
Il serait intéressant d'avoir quelques comparatifs de rapidité et consommation sur l'exécution d'algos équivalents. J'ai jamais rien trouvé comme "benchmark" de Python, hélas (même si ceux ci sont jamais réellement exacts, ça donne une idée globale).
Hors ligne
#9 Le 14/07/2011, à 12:30
- grim7reaper
Re : Besoin explication : Python et Java
Sinon, Java comme Python sont des langages interprétés, et python n'est pas moins rapide que Java.
C'est des conneries ça, une JVM standard contre l'interpréteur Python standard (pas PyPy ou truc du genre hein, je parle de CPython (l'implémentation de référence)) c'est le Java qui est le plus rapide.
Dernière modification par grim7reaper (Le 14/07/2011, à 12:32)
Hors ligne
#10 Le 14/07/2011, à 12:48
- bipede
Re : Besoin explication : Python et Java
Tu es certain de cela ? Une VM et un interpréteur c'est pas tout à fait la même chose
Une JVM est un environnement permettant l'interprétation et l'exécution du bytecode Java.
La seule chose qui différencie l'environnement runtime de Python d'une JVM c'est que Python en plus de l'interprétation et de l'exécution produit le bytecode de façon dynamique.
Quant à la vitesse d'exécution elle est directement liée d'un côté comme de l'autre á la qualité du code source.
C, C# ou C++ seront toujours plus rapides que Java ou Python, mais la différence est négligeable dans les applications de gestion.
Perso, quand j'ai besoin d'effectuer des calculs complexes de nature à ralentir mon appli, j'écris mes fonctions de calcul en C et je les appelle dans Python à l'aide de la bibliothèque ctypes.
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#11 Le 14/07/2011, à 12:54
- grim7reaper
Re : Besoin explication : Python et Java
Jules Petibidon a écrit :Tu es certain de cela ? Une VM et un interpréteur c'est pas tout à fait la même chose
Une JVM est un environnement permettant l'interprétation et l'exécution du bytecode Java.
La seule chose qui différencie l'environnement runtime de Python d'une JVM c'est que Python en plus de l'interprétation et de l'exécution produit le bytecode de façon dynamique.
T'as une vision bien simpliste de ce qu'est une JVM toi.
Y'a bien plus de différence que ça entre une JVM et un interpréteur, je te laisse te documenter sur le sujet (c'est loin d'être ma spécialité).
Hors ligne
#12 Le 14/07/2011, à 12:57
- bipede
Re : Besoin explication : Python et Java
C'est des conneries ça
Comme quoi, il n'y a pas que des gens intelligents sur ce forum... Ni très polis d'ailleurs...
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#13 Le 14/07/2011, à 13:00
- grim7reaper
Re : Besoin explication : Python et Java
grim7reaper a écrit :C'est des conneries ça
Comme quoi, il n'y a pas que des gens intelligents sur ce forum...
Bah ouais, y'a toi :]
Ni très polis d'ailleurs...
Bah ouais, y'a moi :]
Dernière modification par grim7reaper (Le 14/07/2011, à 13:00)
Hors ligne
#14 Le 14/07/2011, à 16:23
- bipede
Re : Besoin explication : Python et Java
T'as une vision bien simpliste de ce qu'est une JVM toi.
Y'a bien plus de différence que ça entre une JVM et un interpréteur
Mon intention n'était pas de faire une thèse sur la JVM dans ce forum. Ceci dit le principal est donné...
(c'est loin d'être ma spécialité).
Ce n'était pas la peine de le dire, j'avais deviné...
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#15 Le 14/07/2011, à 18:54
- grim7reaper
Re : Besoin explication : Python et Java
grim7reaper a écrit :T'as une vision bien simpliste de ce qu'est une JVM toi.
Y'a bien plus de différence que ça entre une JVM et un interpréteurMon intention n'était pas de faire une thèse sur la JVM dans ce forum. Ceci dit le principal est donné...
Entre faire des simplifications spécieuses et faire une thèse il existe un juste milieu
grim7reaper a écrit :(c'est loin d'être ma spécialité).
Ce n'était pas la peine de le dire, j'avais deviné...
Bah c'est loin d'être la tienne aussi pour ce que j'en lis.
Sauf que moi, quand je connais pas un truc je me renseigne un minimum avant de parler/d'écrire…
Fin du HS en ce qui me concerne, faudrait voir à pas polluer le topic.
Hors ligne
#16 Le 14/07/2011, à 19:09
- bipede
Re : Besoin explication : Python et Java
Bah c'est loin d'être la tienne aussi pour ce que j'en lis.
Sauf que moi, quand je connais pas un truc je me renseigne un minimum avant de parler/d'écrire…Fin du HS en ce qui me concerne, faudrait voir à pas polluer le topic.
C'est quoi ton problème ?
Papa te traitait d'incapable quand tu étais petit ?
Tu ne supportes pas la contradiction ?
En tout cas tu t'es trompé de forum...
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#17 Le 14/07/2011, à 19:32
- grim7reaper
Re : Besoin explication : Python et Java
grim7reaper a écrit :Bah c'est loin d'être la tienne aussi pour ce que j'en lis.
Sauf que moi, quand je connais pas un truc je me renseigne un minimum avant de parler/d'écrire…Fin du HS en ce qui me concerne, faudrait voir à pas polluer le topic.
C'est quoi ton problème ?
Les attaques ad hominem dont tu fais preuve sans aucune raison valable et dont tu uses pour cacher ton manque flagrant d'arguments.
Moi je veux bien parler avec toi et que tu me montres que j'ai tort (au contraire, je me coucherais moins con comme ça), mais les réponses au ras des pâquerettes que tu m'as faites jusqu'à maintenant ne m'intéressent guère.
Papa te traitait d'incapable quand tu étais petit ?
Tu ne supportes pas la contradiction ?
La paille, la poutre, toussa…
C'est bien toi qui es monté sur tes grands chevaux parce que j'ai eu l'outrecuidance de dire que tu disais « des conneries », pas l'inverse.
Et puis pour le moment tu ne m'as pas contredit vu qu'à part t'énerver tu n'as apporté aucun argument défendant tes affirmations.
En tout cas tu t'es trompé de forum...
Bah tu sais, j'ai déjà fait mes preuves (si je puis dire) sur ce forum donc je n'ai rien à prouver ici.
Hors ligne
#18 Le 14/07/2011, à 20:22
- bipede
Re : Besoin explication : Python et Java
C'est bien toi qui es monté sur tes grands chevaux parce que j'ai eu l'outrecuidance de dire que tu disais « des conneries », pas l'inverse.
Et puis pour le moment tu ne m'as pas contredit vu qu'à part t'énerver tu n'as apporté aucun argument
Parce que toi tu as apporté la moindre argumentation ? à part qualifier de conneries ce que les autres disent ? relis attentivement ce topic
Dernière modification par bipede (Le 14/07/2011, à 22:40)
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#19 Le 14/07/2011, à 21:21
- tshirtman
Re : Besoin explication : Python et Java
@bipède: pas besoin d'en arriver aux insultes, grim est aussi un codeur sérieux, même si le python n'est pas sa spécialité, c'est pas non plus un pisseur de code.
Pour le python, l'interpréteur est une VM¹, au même titre que le JVM, mais le langage en lui même est plus complexe a optimiser, puisqu'il laisse bien plus de liberté, notamment au niveau des types, java suppose (et s'assure) qu'une variable ne changera jamais de type, ce n'est pas le cas de python. Donc, sur les applis cpu-bound (une très faible part des applications) Python sera en général plus lent que java, c'est un fait². Cela dit, la plupart du temps, de nos jours, on a autre chose à faire que de ce préoccuper d'un facteur de 2 ou 3 sur les opérations de calculs complexes, le temps de développement, (bien plus cours en python) est plus précieux.
¹: http://en.wikipedia.org/wiki/Python_%28 … 29#CPython
²: http://shootout.alioth.debian.org/u32/w … python3=on
Dernière modification par tshirtman (Le 14/07/2011, à 21:26)
Hors ligne
#20 Le 14/07/2011, à 21:39
- bipede
Re : Besoin explication : Python et Java
@tshirtman
T'as raison, c'est pas la peine de se prendre le choux...
Desktop: MSI - Intel® Core™ i5-3330 CPU @ 3.00GHz × 4 - RAM 8 go- Kubuntu 21.04 - Système sur SSD 64 Go - /home sur HDD 500 Go.
Laptop: DELL Inspiron-15 3567 - Intel® Core™ i5-7200 CPU @ 2.50GHz × 4 - RAM 8 go - HDD 1 To - Ubuntu 20.10 avec /home séparé.
Mon site: Les contributions du bipède
Hors ligne
#21 Le 14/07/2011, à 21:46
- The Uploader
Re : Besoin explication : Python et Java
Aheum..
C, C# ou C++ seront toujours plus rapides que Java ou Python
C# = MS' Java = .NET = CLR = VM (et MSIL = Bytecode).
Dernière modification par The Uploader (Le 14/07/2011, à 21:47)
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne
#22 Le 14/07/2011, à 21:49
- tshirtman
Re : Besoin explication : Python et Java
@bipede: une petite édition de ton post, maintenant que tu le prends cool?
@The uploader: ton post n'est pas très explicite…
Hors ligne
#23 Le 14/07/2011, à 21:51
- The Uploader
Re : Besoin explication : Python et Java
M'en fous, spa libre.
- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10
Hors ligne