IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Python Discussion :

Comment bien débuter en python ?


Sujet :

Python

  1. #1
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut Comment bien débuter en python ?
    Bonjour,

    J'aimerais commencer le python vous auriez un tuto d'apprentissage intéressant à me proposer? (de préférence avec des exemples concrets d'utilisation)

    Ce serait pour l'utiliser plutot sur du réseau, j'ai eu un apercu, on pouvait gérer les sockets intéragir avec une base de données ect

    Qu'est ce que vous pouvez me dire sur ce langage ?

    Cordialement

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut,

    En général on recommande celui-ci: https://python.developpez.com/cours/apprendre-python3/

    Mais bon, une simple recherche te montrera que l'on est pratiquement noyés sous les tutoriels Python.

  3. #3
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci.

    Un livre incontournable de 435 pages
    Effectivement je vais vite être noyé !
    Incontournable alors ca doit être long a maitriser

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    Effectivement je vais vite être noyé !
    Bonjour

    Pas du tout. J'ai moi aussi commencé avec celui-là. Il suffit de commencer à la première page et suivre le fil, en faisant les exos et exemples.
    En plus il y a des parties que tu n'es pas obligé de traiter. Par exemple le module "turtle" c'est amusant mais ce n'est pas primordial à la connaissance du langage.

    Citation Envoyé par bonjourajax Voir le message
    Incontournable alors ca doit être long a maitriser
    Ah ben il y a tout mais tu n'es pas obligé de tout lire de suite...
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Rédacteur/Modérateur

    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2013
    Messages
    4 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2013
    Messages : 4 216
    Par défaut
    Le conseil que je pourrais donner, c'est d'oublier l'objectif final pendant 2 ou 3 mois. Au judo, avant de devenir ceinture noire, il faut franchir des paliers. Et on franchit au mieux un palier chaque année.
    En informatique, c'est pareil. Il ne faut pas essayer d'aller plus vite que la musique.

    Tu parles de programmation réseau, de sockets, etc. Ok, Ca va venir un jour. Mais prend ce tutoriel, prend les chapitres 1 par 1, même s'ils ne sont pas en lien direct avec la programmation réseau. Il y a effectivement des chapitres assez spécifiques, peu en rapport avec le reste. Là, c'est un choix, un risque. Faire ces exercices, c'est consommateur de temps ; ne pas les faire, c'est le risque de passer à côté d'un truc très formateur. Il faut couper la poire en 2. Tu peux sauter quelques chapitres, mais pas trop.

  6. #6
    Membre habitué
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Février 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Février 2016
    Messages : 11

  7. #7
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Pasquinel39 Voir le message
    Visionnez des MOOC !
    Mouais. Je les ai tous parcourus (pas visionnés en entier mais survolés). Bon ok le type il s'est investi pour produire son cours et il peut en être satisfait mais c'est clair que ce n'est pas un Swinnen quoi. Tout est en vrac. Il commence par expliquer l'encoding alors qu'on ne sait même pas ce qu'est une chaine ; il parle de méthodes alors qu'on n'a pas vu l'objet ; il nous met des exemples de float ou d'entiers sans avoir parlé des types Python ; explique les listes mais rien sur les tuples ou dictionnaires (qui sont quand-même des fondamentaux) ; nous décrit la méthode "sort()" puis rajoute "attention, ne récupérez jamais ce qui en revient (perso ça ne me serait jamais venu à l'idée) car il en sort None" sans qu'on sache 1) ce qu'est une fonction et ce qui peut en revenir 2) ce qu'est None (enfin si il en parle un peu juste après mais vraiment juste un peu). Et jamais il n'a expliqué comment écrire du code dans un fichier puis comment appeler le fichier pour exécuter le code qui s'y trouve (la base du script). Bref c'est un peu cafouilli. Et puis c'est loooonnng...

    A mon avis, l'apprentissage de la prog par vidéo ça fait peut-être très XXI° siècle mais rien ne vaut le tutoriel imprimé (oups pardon aux arbres => allez, ouvert en pdf sur sa tablette ou mieux, sur son second écran pour celui qui a la chance d'en avoir un) qu'on peut lire. Le rendement "quantité apprise/temps passé" sera bien plus efficace...
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

  8. #8
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci pour vos réponse,
    J'ai de quoi faire ^^

    Est-ce que vous me conseillez un ide en particulier?
    Sinon j'ai un interpreteur Python v 2.7.15rc1
    J'ai installé la 3.6.5rc1

    Je dois utiliser laquelle ? (j'ai des package qui dépendent de python2)

  9. #9
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    Je dois utiliser laquelle ? (j'ai des package qui utilsent python2)
    Ca c'est la question à 1000 balles. C'est celle qui fait le plus débat entre les utilisateurs Python.
    Python v3 c'est de la refonte complète. C'est l'unicode par défaut, ce sont les exceptions revues et allégées, des simplifications dans les objets, bref à priori c'est l'avenir. Et (à ce qu'il semble) ses performances se sont nettement accrues depuis la 3.0.1. Mais voilà, tout n'est pas encore porté en v3.
    Python v2 c'est l'obsolète, le passé, le dépassé. Mais voilà, beaucoup de gens continuent à l'utiliser parce qu'ils ont besoin de packages toujours en v2 et pas encore en v3. Et (jusqu'il y a peu) ses performances surpassaient encore P3. C'est aussi une des raisons qui font que P2 restera supporté jusqu'en 2020.

    Donc toi seul peut répondre. Si vraiment tu ne peux pas te passer de ces packages, alors tu es obligé de rester sous P2. Si maintenant tu peux en trouver d'autres qui répondent à tes besoins, alors je conseillerais de commencer avec P3 car d'une façon ou d'une autre, et malgré la fronde, je pense que P2 sera quand-même abandonné un jour (et je ne dis pas ça par parti pris car pour l'instant je suis toujours sous P2 justement à cause d'un module qui n'est pas encore distribué sous P3 et je sais que je vais en chier le jour où je devrai porter mes projets encore vivants sous P3 car ils totalisent actuellement 248 sources et 183000 lignes de code !!!).

    Accessoirement tu peux rester sous P2 mais importer certains modules qui le feront se comporter comme P3 sur certains points. Ils sont tous dans "__future__" et se nomment
    • print_function pour que "print" soit utilisé comme une fonction
    • unicode_litterals pour que les chaines soient en unicode par défaut
    • absolute_import pour que les imports se fassent en absolu
    • division pour que l'opérateur slash de la division ("/") soit réelle quels que soient le type des opérandes (sous P2 elle se comporte selon le type le plus large présent). Et si la division euclidienne te manque, tu as toujours le double slash ("//") qui fait ce travail dans les deux Python

    Ca ne règlera pas tout mais ça t'aidera quand ensuite tu passeras réellement sous P3...
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

  10. #10
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci pour ces informations bien détaillées cependant je ne comprends pas bien ce point
    Ca va changer quelque chose si je programme en utilisant python3 mais que certains package ont besoin du 2?
    Je m'y connais vraiment pas

    J'ai les 2 versions qui "cohabitent" du coup c'est juste qu'en voulant supprimer la v 2 j'ai vu les dépendances j'ai annulé l'opération
    (et pour te répondre, oui je suis bien obligé d'avoir python2 )

    Si niveau performance python 3 est mieux autant l'utiliser non?
    Est-ce qu'on peut combiner les 2 version dans un meme script? comme par exemple php5 et php7

    Edit : je suis aller voir dans __future__.py (dans python 3.6)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    absolute_import = _Feature((2, 5, 0, "alpha", 1),
                               (3, 0, 0, "alpha", 0),
                               CO_FUTURE_ABSOLUTE_IMPORT)
    Faudra faire comment pour utiliser ces modules si j'utilise python2

  11. #11
    Membre habitué
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Février 2016
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Février 2016
    Messages : 11
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Mouais. Je les ai tous parcourus (pas visionnés en entier mais survolés). Bon ok le type il s'est investi pour produire son cours et il peut en être satisfait mais c'est clair que ce n'est pas un Swinnen quoi. Tout est en vrac. Il commence par expliquer l'encoding alors qu'on ne sait même pas ce qu'est une chaine ; il parle de méthodes alors qu'on n'a pas vu l'objet ; il nous met des exemples de float ou d'entiers sans avoir parlé des types Python ; explique les listes mais rien sur les tuples ou dictionnaires (qui sont quand-même des fondamentaux) ; nous décrit la méthode "sort()" puis rajoute "attention, ne récupérez jamais ce qui en revient (perso ça ne me serait jamais venu à l'idée) car il en sort None" sans qu'on sache 1) ce qu'est une fonction et ce qui peut en revenir 2) ce qu'est None (enfin si il en parle un peu juste après mais vraiment juste un peu). Et jamais il n'a expliqué comment écrire du code dans un fichier puis comment appeler le fichier pour exécuter le code qui s'y trouve (la base du script). Bref c'est un peu cafouilli. Et puis c'est loooonnng...

    A mon avis, l'apprentissage de la prog par vidéo ça fait peut-être très XXI° siècle mais rien ne vaut le tutoriel imprimé (oups pardon aux arbres => allez, ouvert en pdf sur sa tablette ou mieux, sur son second écran pour celui qui a la chance d'en avoir un) qu'on peut lire. Le rendement "quantité apprise/temps passé" sera bien plus efficace...
    ==========

    Mais c'est parfaitement complémentaire !!!
    Ce MOOC succèdent à un premier qui lui est conçu pour les débutants !
    Vous ne savez pas régler la vitesse de lecture de votre player youtube sur X1,5 ???
    Comment est-ce possible ? 😂😂😂

  12. #12
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    Merci pour ces informations bien détaillées cependant je ne comprends pas bien ce point
    Ca va changer quelque chose si je programme en utilisant python3 mais que certains package ont besoin du 2?
    Ah ce n'est absolument pas compatible. En P3 il y a une majorité de truc qui a changé. Certains builtins ont changé de nom, certains objets, modules, etc aussi. Evidemment un module qui se contente de calculer le carré d'un nombre fonctionnera aussi bien sous P2 que sous P3 mais je pense que le module que tu utilises fait un peu plus que ça.

    Citation Envoyé par bonjourajax Voir le message
    (et pour te répondre, oui je suis bien obligé d'avoir python2 )
    Ok, tu peux y aller. Et puis ça dépend aussi du contexte. Si par exemple tu développes tes trucs pour toi, il est probable que tu pourras continuer ainsi toute ta vie. Ce n'est pas parce que P2 se termine en 2020 que tes programmes cesseront de fonctionner en 2021.
    Et sinon, alors en gardant à l'esprit qu'un jour ou l'autre tu devras probablement passer sous P3. Et puis c'est pas non plus catastrophique. Le jour où tu veux passer ton projet de P2 vets P3 tu crées un nouveau dossier et tu ramènes tes sources un par un en les corrigeant au fur et à mesure...

    Citation Envoyé par bonjourajax Voir le message
    Si niveau performance python 3 est mieux autant l'utiliser non?
    Ben oui mais si tu peux pas... Et puis bon, je parle de performances mais les différences se mesurent en dixième de secondes. Celui qui veut coder le calculateur d'une centrale nucléaire se préoccupera peut-être de ça mais est-ce que tes codes auront cette criticité ???

    Citation Envoyé par bonjourajax Voir le message
    Est-ce qu'on peut combiner les 2 version dans un meme script? comme par exemple php5 et php7
    Hé non.

    Citation Envoyé par bonjourajax Voir le message
    Edit : je suis aller voir dans __future__.py (dans python 3.6)

    Faudra faire comment pour utiliser ces modules si j'utilise python2
    Tu écris en début de tes scripts from __future__ import print_function et de même pour les autres modules que tu veux activer...

    Citation Envoyé par Pasquinel39 Voir le message
    Vous ne savez pas régler la vitesse de lecture de votre player youtube sur X1,5 ???
    Ca c'est vrai, cette option m'avait échappé (ok, je viens de la trouver). Mais bon, explorateur de youtube ce n'est pas vraiment ma priorité en général. Ceci dit, même en x1.5 le rendement ne rattrape pas celui du tutoriel. Si ça peut aider certains à se lancer...
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

  13. #13
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci !ça donne envie de commencer :p

    Pour l'histoire que python2 sera obsolete en 2020
    Toutes les ressources (et les modules) de python2 si je les sauvegarde en local je pourrais toujours les utiliser a vie non? (ou ca utilise des ressources externes obligatoires)
    -> Donc tu conseilles plutot de partir sur P2 et importer des modules de P3 si besoin

    Quel style utilisez-vous pour une relecture facile? j'ai trouvé ceci sur un forum
    PEP 8

    En jetant un coup d'oeil aux scripts utilisés par certains des packages
    Certains contiennent en commentaires

    a single self-contained source file that works with any version
    of Python from version 1.5 or higher.

  14. #14
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    Pour l'histoire que python2 sera obsolete en 2020
    Toutes les ressources (et les modules) de python2 si je les sauvegarde en local je pourrais toujours les utiliser a vie non? (ou ca utilise des ressources externes obligatoires)
    Non non, c'est d'ailleurs un critère impératif chez mes donneurs d'ordre => tous mes projets doivent impérativement fonctionner sans connexion web (on travaille parfois en réseau fermé). Donc j'ai carrément téléchargé et stocké en local tout ce que j'utilise Et quand j'installe un de mes projets sur un poste, alors je commence par installer sur ce poste ce que j'appelle mon pack qui contient tous les modules nécessaires au fonctionnement du projet quitte à en recompiler certains (ex Qt/PyQt).
    Donc toi c'est pareil. A un bémol près: si un jour tu changes d'OS (nouveau windows, nouveau linux) auquel cas il est possible que P2 ne fonctionne plus sur ce nouvel OS. C'est aussi un souci chez-moi (mais bon, on n'est pas non plus à courrir systématiquement derrière les dernières nouveautés => là on est par exemple en train de réfléchir si on passe sous W10 ou pas) donc j'ai un peu de marge (à la fois la marge 2020 (qui peut encore évoluer, elle a déjà évolué tant de fois...) multipliée par la marge "ok on upgrade nos OS").

    Citation Envoyé par bonjourajax Voir le message
    -> Donc tu conseilles plutot de partir sur P2 et importer des modules de P3 si besoin
    Non je n'ai pas conseillé ça. J'ai dit qu'il valait mieux partir sur P3 mais que si tu ne pouvais pas faire autrement, alors P2 n'était pas interdit et que ça fonctionnerait toujours ; et qu'en important non pas les modules P3 mais les "__future__" qui forcent P2 à se comporter comme P3 dans certains domaine alors ça t'obligera à écrire un code type P3 pour tout ce qui touche à ces domaines sans te gêner pour coder en P2 et ça t'évitera d'avoir à retraduire ensuite tout ce qui touche à ces domaines en P3 (surtout pour l'unicode, c'est le plus ardu) le jour où tu basculeras sur P3 si ce jour arrive. Et s'il n'arrive pas, ça n'empêchera pas tes scripts de tourner quand-même.

    Citation Envoyé par bonjourajax Voir le message
    En jetant un coup d'oeil aux scripts utilisés par certains des packages
    Certains contiennent en commentaires
    a single self-contained source file that works with any version
    of Python from version 1.5 or higher.
    Moui. Ca veut dire que ce script fonctionne sous Python 1.5 et au dessus (1.6, 1.7, etc, 2.0, 2.1, etc). Mais à mon avis, ce script ne fonctionnera pas sous P3 pour deux raisons
    • quand ce script a été écrit, son concepteur ne pouvait pas prévoir ce que serait Python v3. Il savait juste que Python v2 serait compatible Python v1.5 donc il ne mentait pas en l'écrivant
    • Python v3 n'est absolument pas compatible Python v2
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

  15. #15
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci pour le temps consacré au post
    Donc je part sur P3

    Et si jamais je suis obligé d'utiliser P2 :je rajoute from __future__ import nom_de_lafunction

    Tu écris en début de tes scripts from __future__ import print_function et de même pour les autres modules que tu veux activer...
    J'ai aussi un fichier nommé __future__ dans le dossier P2 il faut que je copie l'intégralité du fichier __future__ de P3 dans celui de P2?
    quand on écrit from 'dossier' import 'function' faut que le fichier à importer soit au même endroit que le script? ou il va le chercher n'importe ou?
    (bon je pense que je verrais bien tout ça en lisant les cours)

    Et pour le "style" du coup je me base sur ce site ? style PEP 8/

  16. #16
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    J'ai aussi un fichier nommé __future__ dans le dossier P2 il faut que je copie l'intégralité du fichier __future__ de P3 dans celui de P2?
    Surtout pas !!! Le __future__ de P3 c'est pour quand P4 sortira.
    Si tu pars sur P2, tu fais alors comme si tu n'avais pas de P3 sur ta machine. Et tu fais de même (mais à l'envers) si tu pars sur P3. D'ailleurs à ce propos de P2 que tu as voulu désinstaller (je suppose que tu es sur du Debian like et que tu as utilisé aptitude) c'est normal que tu n'aies pas pu. Certains utilitaires et outils présents utilisent encore P2. Mais ça ne t'empêche pas de programmer en P3. Suffit que tu écrives #!/usr/bin/env python3 en tête de tes scripts.

    Citation Envoyé par bonjourajax Voir le message
    quand on écrit from 'dossier' import 'function' faut que le fichier à importer soit au même endroit que le script? ou il va le chercher n'importe ou?
    Il va le chercher dans les dossiers contenus dans sys.path.
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

  17. #17
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Bonjour

    Surtout pas !!! Le __future__ de P3 c'est pour quand P4 sortira.
    Si tu pars sur P2, tu fais alors comme si tu n'avais pas de P3 sur ta machine. Et tu fais de même (mais à l'envers) si tu pars sur P3... Suffit que tu écrives #!/usr/bin/env python3 en tête de tes scripts.
    Ah d'acc
    le #!/usr/bin/env python3 je l'écrit en haut des script en p3?

    P2 que tu as voulu désinstaller (je suppose que tu es sur du Debian like et que tu as utilisé aptitude
    En réalité, ca a bien supprimé P2 ainsi que les packages qui l'utilisaient (apt-get remove) pas de cadeau
    c'est la ou j'ai forcé l'annulation a coup de ctrl c + fermer la fenetre
    Et j'ai re installé tout ce qui avait été désinstallé , ca m'a mis a jour les packages au moins!

    Il va le chercher dans les dossiers contenus dans sys.path
    Et c'est ou précisément
    dans /usr/lib/python* j'ai pas mal de librairie
    et c'est la aussi que j'ai les fichiers
    __future__.py
    __future.pyc (dans /python2)
    __pycache__/__future__.cpython-36.pyc

    sys.path ca comprend tout le dossier /usr/lib ?

  18. #18
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Il n'y a absolument (dans 99,99% des cas) plus de raison de garder python 2.x et essentiellement pour un débutant. Il est extrêmement facile dans la plupart des cas de rendre son code P2 compatible P3 par diverses moyens, le plus connu étant 2to3. Cependant, il existe des modules qui sont obsolètes, dans ce cas, si le code est maintenable et modulable, il reste assez simple de trouver ses équivalents en P3 et de remplacer la partie obsolète.

    Le livre de Swinnen, fait plus de 400 pages, mais dans les moments où j'ai commencé python, je n'avais absolument aucune connaissance dans un domaine informatique, et j'ai lu ce bouquin et fait des tests sur mon interpréteur en moins de deux semaines. Ce qui m'avait beaucoup aidé, c'était de chercher pour les autres sur des forums, afin de rendre mes connaissances plus larges que simplement le domaine applicatif.

    Toute façon quelque soit le langage, si on ne comprend pas le concept sur lequel on travaille, cela n'aura pas d'importance, tu iras droit vers l'échec. Il faut donc bien maîtriser les parties sur le domaine du réseau avant de t'atteler au langage python, même si celui-ci te facilitera bien la tâche.

  19. #19
    Membre chevronné
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2018
    Messages
    537
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Avril 2018
    Messages : 537
    Par défaut
    Merci pour ta réponse !
    Je compte bien commencer avec python3, pas de soucis

  20. #20
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 833
    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 : 12 833
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par bonjourajax Voir le message
    le #!/usr/bin/env python3 je l'ai écrit en haut des script en p3?
    Oui, comme pour un script shell. C'est ce qu'on nomme le "shebang". C'est ça qui fait qu'un script en (par exemple) bash créé par toto pourra être exécuté par titi même si titi travaille en ksh. Et ça marche aussi pour tous les autres langages de script (Perl, Python, php).

    Citation Envoyé par bonjourajax Voir le message
    En réalité, ca a bien supprimé P2 ainsi que les packages qui l'utilisaient (apt-get remove) pas de cadeau
    Moi je passe par aptitude. Au-moins, il me dit ce que ça désinstallera et me demande si je suis d'accord.
    Et en plus je développe sur des machines virtuelles (VirtualBox) avec disque système mis en immuable. Si je fais une connerie avec mon OS, je n'ai qu'à l'arrêter et le redémarrer => le disque système revient à l'initial. Plus une archive .tar.xz de ce même disque système à l'état 0 (juste après que Debian ait été installé) ce qui me permet, au cas où, de revenir à l'état "machine nouvellement installée et vierge"...

    Citation Envoyé par bonjourajax Voir le message
    Et c'est ou précisément
    Est-ce vraiment important ???

    Citation Envoyé par bonjourajax Voir le message
    dans /usr/lib/python* j'ai pas mal de librairie
    et c'est la aussi que j'ai les fichiers
    __future__.py
    __future.pyc (dans /python2)
    __pycache__/__future__.cpython-36.pyc
    Moui, certains fichiers me parlent. Un ".pyc" c'est par exemple ce que devient un module quand il est importé. Il est d'abord compilé à la volée et c'est le résultat (un "bytecode") qui est réellement importé. Le second m'est inconnu (je suppose que c'est un sous-module importé par le premier).

    Citation Envoyé par bonjourajax Voir le message
    sys.path ca comprend tout le dossier /usr/lib ?
    Tu peux maintenant répondre toi-même à cette question !!!
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    import sys
    print(sys.path)
    Mon Tutoriel sur la programmation «Python»
    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
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. [Débuter] Comment bien débuter ?
    Par aShtk dans le forum Débuter
    Réponses: 11
    Dernier message: 02/06/2008, 15h04
  2. Comment bien débuter en Java et SQL ?
    Par genamiga dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 07/01/2008, 20h26
  3. comment bien débuter sur java
    Par mahjoubi dans le forum Langage
    Réponses: 7
    Dernier message: 22/08/2007, 11h53
  4. [VB.Net] Comment bien débuter avec ADO.Net ?
    Par hakeem_n2000 dans le forum Accès aux données
    Réponses: 1
    Dernier message: 07/08/2006, 16h14
  5. Comment bien débuter un projet?
    Par Sylvester dans le forum Langage
    Réponses: 3
    Dernier message: 02/03/2006, 20h45

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