Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #61
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Développeur python
    Inscrit en
    juillet 2006
    Messages
    2 913
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur python
    Secteur : Santé

    Informations forums :
    Inscription : juillet 2006
    Messages : 2 913
    Points : 5 484
    Points
    5 484
    Par défaut
    Bonjour,

    @gallima,

    De quelle incompatibilité parles-tu ?
    Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
    La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

  2. #62
    Membre actif
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    décembre 2011
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2011
    Messages : 59
    Points : 265
    Points
    265
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    Bonjour,

    @gallima,

    De quelle incompatibilité parles-tu ?
    L'incompatibilité la plus importante à mon sens est celle de la représentation des chaînes de caractères. Passer d'une vision orientée 'byte' à une version orientée 'caractère unicode' a cassé tous les programmes qui utilisait les 'string' pour passer de la data raw. Par exemple, il n'est plus possible de mapper directement un 'char*' C vers python (enfin y a une méthode mais ce n'est pas directe). Le changement est si important qu'il est souvent plus simple de réécrire le code totalement. Y a d'autres incompatibilités qui existe, mais j'ai pu la liste en tête, celle-là a été suffisante pour moi.


    Edit:
    http://www.python-simple.com/python-langage/python3.php
    Le coup du changement de comportement de la division peut aussi rendre des portions de code fausse et ce silencieusement...

  3. #63
    Membre averti
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    octobre 2019
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Conseil

    Informations forums :
    Inscription : octobre 2019
    Messages : 101
    Points : 375
    Points
    375
    Par défaut
    je suis passé rapidement a python3.x... mais jusqu'a aujourd'hui ce langage m'a toujours gonflé a cause de existence de ces 2 versions :
    Distrib linux qui utilise python2 par défaut (j'ai eu beaucoup de difficulté parfois avec des clients ou j'ai du réécrire mon code en python2 parce qu’ils ne pouvaient pas installer python3)
    Documentation sur le net ou faut faire attention a chaque fois que c'est bien du python3 (heureusement c'est de moins en moins le cas avec les années)
    Des libs qui n'existe plus ou alors des imports a modifier
    ...

    Don la fin du support de python2.7, cela veux dire que les distrib linux vont devoir migrer 100% de leurs scripts et ne plus installer par défaut python2, je suis content... j'aurais aimer que cette fin de support arrive plus tot (disons en 2015)

    bon débarra python2, repose en paix... vers silverlight

  4. #64
    Membre expert

    Profil pro
    Inscrit en
    février 2006
    Messages
    2 135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 2 135
    Points : 3 677
    Points
    3 677
    Par défaut
    Citation Envoyé par Olivier Famien Voir le message
    Pour AlexMax, si l’équipe de développement de Python a reporté la première date de fin du support de Python 2.7, et s’il existe encore une forte population qui continue à utiliser Python 2.7, c’est parce qu’il n’y a pas suffisamment d’éléments motivants qui poussent à la migration vers Python 3. Au lieu de travailler à ces lacunes en implémentant de nouvelles fonctionnalités dans Python 3 pour convaincre les développeurs à migrer vers cette version, l’équipe de Python a plutôt agité le bâton en rappelant à chaque fois l’imminence de l’abandon de Python 2.x. Résultat, certains développeurs estiment qu’ils pourraient se tourner plutôt vers d’autres langages.
    ça c'est encore une bonne excuse pour ne pas migrer : "il n'y a pas 100% des trucs que je veux dans python 3 (mais qui de toute façon n'était pas là dans python 2) donc je migre pas".

    je suis d'accord avec calvaire, python 2 aurait du être mis de coté il y a au moins 10 ans. les gens/entreprises/etc trouveront toujours une bonne excuse pour pas le faire, ils n'ont toujours pas compris les risques à s'y prendre trop tard, qu'ils assument au bout d'un moment.

    ps: en relisant c'est encore pire que ce que je pensais :

    "la représentation fondamentale des chaînes de caractères a changé pour le pire et non le meilleur ;" dans python 3 des données sont des collections d'octets et des chaînes de caractères sont des collections de ... caractères, en quoi c'est pire qu'avant où les données étaient des chaînes de caractères? et maintenant on a la prise en charge correcte d'unicode, enfin je ne suis plus obligé d'utiliser une verrue dans mon code pour accéder à des fichiers avec des caractères funkies.

    "la gestion des paquets était et demeure un cauchemar en utilisant une combinaison d’environnements virtuels pip pour installer les dépendances spécifiques au projet ;" ça n'a donc pas changé, je vois pas pourquoi imputer ça à python 3 ...

    "comparé à d’autres langages, Python 3 est toujours lent, car il ne valoriserait que la simplicité par convention ;" pareil, ça se plaint que python 3 a changé trop de trucs, mais là que ça n'a pas changé, ça se plaint pareil ..., en plus tu fais du python pour sa simplicité d'écriture avant tout (enfin je pense), ou alors la personne ne sait pas choisir un langage

    "la bibliothèque asyncio permettant d’écrire du code concurrent en utilisant la syntaxe async/await aurait été ajoutée assez tardivement ;" et donc? c'est tardif donc on migre toujours pas?

    "des indications de type ont été ajoutées au langage en s’appuyant uniquement sur des analyseurs statiques de type hinting au lieu de créer également des vérifications de type d’exécution dans le langage, ce qui aurait été beaucoup plus utile et cohérent, selon l’intervenant ;" toujours pareil, ça reste du python, tu peux pas reprocher à la fois de trop changer et de ne pas assez changer, sinon autant faire un nouveau langage, ça aurait râler pareil néanmoins.

    "jusqu’à présent, il n’y a toujours pas de fonctions lambda anonymes multilignes." pareil que ma première version du post, "il n'y a pas 100% des trucs que je veux donc je migre pas"

    bref, j'ai la flemme de trouver une conclusion à ce merdier...

  5. #65
    Membre éprouvé
    Profil pro
    Inscrit en
    décembre 2004
    Messages
    576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : décembre 2004
    Messages : 576
    Points : 1 057
    Points
    1 057
    Par défaut
    Citation Envoyé par Olivier Famien Voir le message
    Alors que la fin du support de Python 2.7 approche à grands pas, certains utilisateurs manifestent leur réjouissance
    Euh... Leur joie !
    Il faut bien finir par passer à autre chose...
    L'avis publié ci-dessus est mien et ne reflète pas obligatoirement celui de mon entreprise.

  6. #66
    Modérateur

    Homme Profil pro
    Architecte technique
    Inscrit en
    juin 2008
    Messages
    15 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2008
    Messages : 15 112
    Points : 25 630
    Points
    25 630
    Par défaut
    Salut,

    Citation Envoyé par stardeath Voir le message
    bref, j'ai la flemme de trouver une conclusion à ce merdier...
    Il n'y a rien à dire: c'est tout le sens d'un changement de version majeure.

    Ce n'est pas spécifique à Python: tous les produits qui ont eu à subir des évolutions majeures ont eu leurs soucis de jeunesse (c'est pour çà que certains attendent une version n.1 voire n.2 si ce n'est plus avant de se jeter à l'eau), des utilisateurs ravis d'y trouver les fonctionnalités qu'ils attendaient, d'autres fâchés de rencontrer problèmes (même si plupart du temps, ils sont mentionnés dans le release notes) et toujours pas les fonctionnalités qu'ils attendaient eux.

    La plupart des logiciels dont dépendent des applications plus ou moins critiques ont tous un support long, voire très long des anciennes versions qui se traduit par la publications de correctifs (au sens large) les premières années et la publication des seuls correctifs de sécurité (en deuxième temps).

    C'est comme çà.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #67
    Membre actif
    Avatar de Thomas404
    Homme Profil pro
    dev
    Inscrit en
    novembre 2009
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : novembre 2009
    Messages : 98
    Points : 224
    Points
    224
    Par défaut
    Tant mieux, cette situation avec 2 versions existantes etait ridicule, et moi je l'aime bien python 3.7

  8. #68
    Futur Membre du Club
    Inscrit en
    août 2005
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 10
    Points : 9
    Points
    9
    Par défaut Passez à Nim
    Nim c'est Python en mieux et compilé, donc très rapide...

  9. #69
    Membre expert

    Profil pro
    Inscrit en
    février 2006
    Messages
    2 135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2006
    Messages : 2 135
    Points : 3 677
    Points
    3 677
    Par défaut
    Citation Envoyé par Pogzy Voir le message
    Nim c'est Python en mieux et compilé, donc très rapide...
    perso si je fais du python, c'est justement pour, entre autre, me passer d'une étape de compilation, si tu proposes toi d'en rajouter une ...
    bref, je vois pas le rapport avec la choucroute.

  10. #70
    Membre confirmé
    Homme Profil pro
    BTS SN IR
    Inscrit en
    mai 2017
    Messages
    368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SN IR

    Informations forums :
    Inscription : mai 2017
    Messages : 368
    Points : 476
    Points
    476
    Par défaut
    Citation Envoyé par Pogzy Voir le message
    Nim c'est Python en mieux et compilé, donc très rapide...
    dans 99% des cas osef de la rapidité

    .... à croire que tout le monde ici travail sur des calculs intenses sur des datacenter ou bien dans de l'embarqué où le but est de faire tourner un jeu AAA sur 64mo de ram

  11. #71
    Membre expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2017
    Messages
    916
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : avril 2017
    Messages : 916
    Points : 3 998
    Points
    3 998
    Par défaut
    Citation Envoyé par Pogzy Voir le message
    Nim c'est Python en mieux et compilé, donc très rapide...
    Oui voilà, Nim est compilé, a un type system évolué avec de la metaprogrammation, transpile vers C/C++/JS, est peu connu et a peu de bibliothèques. Donc en fait Nim n'a à peu près rien à voir avec Python...

  12. #72
    Futur Membre du Club
    Inscrit en
    août 2005
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : août 2005
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    Sauf que pour faire du hpc sur une plate-forme type Azure ou Aws déployer un exe (NIM) ou toute la pile Python et ses lib panda numpy etc cela n'a rien de comparable.. Et si en plus c'est plus rapide à l'exécution...

  13. #73
    Membre expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2017
    Messages
    916
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : avril 2017
    Messages : 916
    Points : 3 998
    Points
    3 998
    Par défaut
    Sauf qu'ici le sujet c'est la fin du support de Python 2.
    Si tu veux faire un troll Python/Nim/Rust/Julia ouvre un topic dans une section adaptée.

  14. #74
    Membre confirmé

    Homme Profil pro
    Consultant informatique
    Inscrit en
    avril 2015
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : avril 2015
    Messages : 205
    Points : 605
    Points
    605
    Par défaut
    J'ai découvert Python il y a deux ou trois ans et la première chose qui m'a énervé a été ces deux versions. Sur Mac ça a été une grosse galère, encore plus lorsqu'il fallait installer des moteurs d'IA en version 3.
    A mon sens cette migration aurait dû être faite il y a longtemps, l'unicode étant devenu incontournable. Mais bon, je débarque et je connais la nostalgie des vieilles habitudes...

  15. #75
    Membre à l'essai
    Profil pro
    Inscrit en
    janvier 2009
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : janvier 2009
    Messages : 14
    Points : 19
    Points
    19
    Par défaut
    L'incompatibilité la plus importante à mon sens est celle de la représentation des chaînes de caractères. Passer d'une vision orientée 'byte' à une version orientée 'caractère unicode' a cassé tous les programmes qui utilisait les 'string' pour passer de la data raw. Par exemple, il n'est plus possible de mapper directement un 'char*' C vers python (enfin y a une méthode mais ce n'est pas directe). Le changement est si important qu'il est souvent plus simple de réécrire le code totalement. Y a d'autres incompatibilités qui existe, mais j'ai pu la liste en tête, celle-là a été suffisante pour moi.
    @gallima ce n est pas une incompatibilité mais plutot une évolution. toutes les chaines de caractère sont désormais unicode.


    il y a un guide de migration assez simple pour l ensemble des opérations, et une compatibility backward pour assurer rapidement la portabilité. https://python-future.org/compatible_idioms.html et https://portingguide.readthedocs.io/en/latest/

    La ou ca fait vraiment mal, c'est si on a fait des applis graphiques , par exemple avec WxPython, la c est mortel pour le portage car il faut en plus se faner le portage Wx....

  16. #76
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2011
    Messages : 2
    Points : 3
    Points
    3
    Par défaut je continuerai à utiliser python 2.7 car je le maîtrise bien
    jusqu'à ce que des innovations vraiment utiles m incitent à changer, et ce n'est pas actuellement le cas.
    J aime bien la simplicité de python2.7, en plus j ai constaté qu'un programme que j'ai écrit en python 3 semblait nettement plus lent.
    Peut être une fausse impression ?

  17. #77
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2011
    Messages : 2
    Points : 3
    Points
    3
    Par défaut compilé = dépendant du processeur
    Citation Envoyé par Pogzy Voir le message
    Nim c'est Python en mieux et compilé, donc très rapide...
    alors qu'un programme tournant sur windows/pc est transportable , avec (quasiment ) aucune modification
    la compilation =créer un langage machine

  18. #78
    Modérateur

    Homme Profil pro
    Architecte technique
    Inscrit en
    juin 2008
    Messages
    15 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Industrie

    Informations forums :
    Inscription : juin 2008
    Messages : 15 112
    Points : 25 630
    Points
    25 630
    Par défaut
    Citation Envoyé par michel92140 Voir le message
    alors qu'un programme tournant sur windows/pc est transportable , avec (quasiment ) aucune modification
    la compilation =créer un langage machine
    Pas du tout, il est juste "transportable" vers un autre ordinateur qui tourne la même version de Windows mais pas du tout vers un Linux ou vers OSX (ou une autre version de Windows suivant les DLL utilisées) et ce même si les processeurs sont tous compatibles X86 (et donc à instructions machine identiques).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  19. #79
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    ...
    Inscrit en
    juin 2009
    Messages
    4 305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : ...

    Informations forums :
    Inscription : juin 2009
    Messages : 4 305
    Points : 12 937
    Points
    12 937
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par michel92140 Voir le message
    jusqu'à ce que des innovations vraiment utiles m incitent à changer, et ce n'est pas actuellement le cas.
    J aime bien la simplicité de python2.7, en plus j ai constaté qu'un programme que j'ai écrit en python 3 semblait nettement plus lent.
    Peut être une fausse impression ?
    Ton profil dit que tu es enseignant. J'espère que n'apprends plus Python 2 à tes élèves, et que tu le gardes pour toi uniquement

  20. #80
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    février 2006
    Messages
    7 825
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : février 2006
    Messages : 7 825
    Points : 21 394
    Points
    21 394
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par michel92140 Voir le message
    jusqu'à ce que des innovations vraiment utiles m incitent à changer,
    Ou jusqu'à ce que les outils que tu tentes d'utiliser ne soient plus compatibles. Je pensais comme toi il y a seulement un an. Mais voilà, tout d'un coup tu installes un truc et l'interface Python qui va avec le truc ne fonctionne qu'en P3. Et etc etc. Finalement j'ai basculé. Je ne dis pas que ça a été évident mais bon, cela n'a pas été quand-même la difficulté ultime. Et quelque chose me dit que maintenant que P2 est arrêté, tu y viendras beaucoup plus vite que tu ne crois.

    Citation Envoyé par michel92140 Voir le message
    J aime bien la simplicité de python2.7
    Euh... je trouve tout de même que P3 a simplifié pas mal de trucs. object hérité par défaut dans les classes, super() qui peut être maintenant appelé sans paramètre (crois-le ou pas, ça m'a sorti d'une difficulté basée sur une classe privée dont j'héritais et que je n'avais pas solutionné en P2), les viewxxx et iterxxx qui ont disparu des dictionnaires tous maintenant englobés dans xxx (key, values, items). Plus de séparation int/long et unifications des strings toutes unicode. Ca aussi ça m'a fait supprimer quelques lignes quand j'ai porté mes scripts...

    Citation Envoyé par michel92140 Voir le message
    en plus j ai constaté qu'un programme que j'ai écrit en python 3 semblait nettement plus lent.
    Peut être une fausse impression ?
    Peut-être parce que ce genre de phrase un peu "dans le flou" ne veut rien dire. "un" programme. Comment as-tu fait tes benchmarks ? Il faisait quoi ce programme ? Il était alone ou utilisait des libs externes ? Il y a plein de circonstances qui font qu'un programme peut être plus lent...
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site

Discussions similaires

  1. Réponses: 1
    Dernier message: 31/03/2016, 02h23
  2. ASP.Net 5 bêta 7 est disponible avec des améliorations de DNX
    Par Olivier Famien dans le forum Framework .NET
    Réponses: 0
    Dernier message: 11/09/2015, 06h36
  3. [Joomla!] Joomla 1.6 est disponible avec l'arrivée du code sémantique
    Par Idelways dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 18
    Dernier message: 18/03/2011, 11h04
  4. Réponses: 0
    Dernier message: 02/02/2010, 22h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo