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 :

Premiers pas sous Python


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 31
    Par défaut Premiers pas sous Python
    Bonjour,

    Passionné d'informatique au sens large, je suis un généraliste : j'ai travaillé en infographie, je me suis intéressé aux standards du web, et je bosse actuellement comme technicien dans les réseaux et télécommunications. Lors de mes études, j'ai eu l'occasion de toucher à Flash ActionScript (proche du Javascript), au shell Linux Bash, bref, des "petits" langages interprétés. Toujours du structuré, je n'ai jamais osé l'orienté objet. Je me suis rendu compte que me casser la tête sur un problème, chercher une alternative, une solution de contournement, et obtenir un résultat efficace me plaisait. Je n'en ferais pas mon travail, mais de temps à autres, par passion, lorsque j'aurais besoin d'un outil à ma convenance, j'apprécierais réellement savoir programmer, ou au moins comprendre comment tel ou tel code fonctionne pour obtenir tel résultat.

    J'ai donc lu de nombreux avis et points de vue sur le net, et j'ai essayé de restreindre mes choix à un langage qui pourrait me correspondre. J'ai une préférence pour les interprétés, sur lesquels ont peu avoir un aperçu direct du résultat sans avoir à compiler, qu'il soit ouvert, avec une écriture claire, agréable à apprendre. C'est pourquoi je me suis naturellement orienté vers Python.

    J'en ai donc profité pour acheter le livre suivant :
    [ame="http://www.amazon.fr/Apprendre-programmer-avec-Python-dexercices/dp/2212127081/ref=sr_1_1?ie=UTF8&s=books&qid=1282917600&sr=8-1"]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d'exercices !: Amazon.fr: Gérard Swinnen: Livres@@AMEPARAM@@http://ecx.images-amazon.com/images/I/512T2XYZbLL.@@AMEPARAM@@512T2XYZbLL[/ame]

    Un bouquin, c'est bien pour débuter. Mais l'expérience de professionnels, c'est mieux. J'aurais donc besoin de vos conseils pour bien commencer sur le langage Python (gardez à l'esprit que je commencerais directement sur la 3.x) :
    - quelles sont les points essentiels sur lesquels m'attarder ?
    - quelles sont les "pièges" à éviter ? à quoi dois-je faire attention ?
    - d'autres livres intéressants ? d'autres ressources utiles ?
    - des conseils divers ? (ce qu'il vous semble utile de préciser)

    Last but not least; j'ai pu remarquer que pour progresser, le mieux est de se fixer un objectif et travailler en groupe, par émulation de chacun de ses membres. A votre connaissance, existe-t-il des "clubs" de développeurs Python ?

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Par défaut
    bonjour et bienvenue surtout

    des points essentiels sur lesquels s'attarder ? il y en a plusieurs et je ne connais pas le bouquin dont tu parles (même si j'ai vaguement parcouru celui sur la version précédente, du même auteur). je dirais donc: multiplier les sources de documentation: lire des tutos sur le oueb, utiliser 2 ou 3 bouquins différents. Pourquoi ? parce que chaque auteur a sa propre sensibilité, son propre style, sa propre pédagogie, son lot de prérequis. Tu seras par exemple plus sensible à la pédagogie d'un auteur qu'un autre pour diverses raisons qui font que moi j'aime certain type de livre, de style et de ton et que toi tu aimes des styles différents.

    Par exemple les livres de référence sont plus difficile pour commencer mais deviennent plus vite incontournable dés que l'on gagne en expérience. Des livres plutôt accès apprentissage (certains nécessitent tout de même d'avoir des connaissance en programmation) sont plus utiles dans les premiers mois.

    Les pièges a éviter: le système de référence de Python me semble être le principal. C'est pas vraiment un piège, disons que c'est une difficulté (parce que c'est un particularisme du langage Python) sur laquelle les débutants butent souvent.

    Des clubs de développeurs je ne sais pas vraiment. Tu trouveras sur ce site parfois quelques challenges (il y en a un en ce moment relatif au développement de jeux).

    Mais il y en a d'autres aussi, comme le Projet Euler si tu aimes les maths (http://projecteuler.net/) ou alors le Python Challenge (http://www.pythonchallenge.com/). Ce dernier j'accroche pas trop personnellement, je trouve que c'est un peu trop tiré par les cheveux parfois leur énigme (je fais allusion à celle du Peak Hell pour ceux qui ont essayé, voir à celle de la fermeture éclair) pour des non anglophones...

    Ensuite, il y a des projets open source qui cherchent des contributeurs Il faut déjà s'être un peu fait les dents avec Python cependant et trouver un projet qui te motive. Et puis, qui sait, peut être que tu pourras même contribuer au projet python lui même

    Enfin et pour conclure, le forum ici c'est bien aussi (sans oublier la faq, les exemples de source) pour échanger et poser des questions. Y a des gens compétents et disponibles. Et autre point fort de la communauté ici, on trouve des interlocuteurs pour tout un tas de sujets relatifs à Python, aussi bien les IHM, les librairies scientifiques, des férus d'algo, de techno web et réseau, de base de données, de conception en général. tu les reconnaîtras ;p

    Oala, bon pythonage !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 31
    Par défaut
    Hé bien, merci de l'accueil.

    Lorsque j'avais touché à ActionScript, je m'étais rendu compte que je n'aimais pas les bouquins "pas à pas", et j'étais fan des références, reprenant le vocabulaire propre au langage en expliquant succinctement son utilisation, avec un exemple. Beaucoup plus utile que "faites ci, faites ça", selon moi.

    Qu'appelles-tu le système de référence ? (je vais aller sur la FAQ de ce pas...)

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Par défaut
    Tu peux aussi consulter les nombreuses ressources Developpez.com : Forum Python F.A.Q Python Tutoriels Python Sources Python Outils Python Livres Python (voir le menu en haut dela page)

  5. #5
    Membre émérite
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Par défaut
    Citation Envoyé par .Nawak Voir le message
    Qu'appelles-tu le système de référence ? (je vais aller sur la FAQ de ce pas...)
    salut,

    il n'y a pas d'article relatif à ça dans la fac. le système de références est ce qui permet à Python de se passer des pointeurs.

    les transmissions d'arguments à des fonctions se font par référence, là où en c/c++ ils se font par valeur par défaut.

    quand on écrit:

    b est exactement le même objet que a (même adresse mémoire) comme si on avait utilisé un pointeur.

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 802
    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 802
    Billets dans le blog
    1
    Par défaut
    Tu sais que son auteur l'offre gratuitement en téléchargement format PDF ???

    Citation Envoyé par .Nawak Voir le message
    Un bouquin, c'est bien pour débuter. Mais l'expérience de professionnels, c'est mieux. J'aurais donc besoin de vos conseils pour bien commencer sur le langage Python (gardez à l'esprit que je commencerais directement sur la 3.x) :
    - quelles sont les points essentiels sur lesquels m'attarder ?
    - quelles sont les "pièges" à éviter ? à quoi dois-je faire attention ?
    - d'autres livres intéressants ? d'autres ressources utiles ?
    - des conseils divers ? (ce qu'il vous semble utile de préciser)
    Perso, j'ai commencé Python il y a 3 ans et j'ai commencé avec le même livre que toi que j'ai téléchargé, imprimé et lu. Bon j'ai sauté certaines parties qui s'attardent sur le principe d'une boucle ou le fonctionnement de turtle mais dans l'ensemble, je pense qu'on ne peut pas commencer un langage sans lire attentivement un tuto approprié. Et celui-là est superbement fait !!!
    Ensuite c'est ta propre expérience qui te fera aller vers les points essentiels. Toutefois, je te recommande aussi "dive into python" http://diveintopython3.org qui approfondira certains points utiles. Et as-tu vu que sur ce site "developpez" il y a des tutos Python (tout en haut de la page) ???

    Citation Envoyé par kango Voir le message
    quand on écrit:

    b est exactement le même objet que a (même adresse mémoire) comme si on avait utilisé un pointeur.
    Ptet en Python 3 que je ne connais pas (je suis resté à la 2.5) mais pas en v2
    IDLE 1.2.4
    >>> a=1
    >>> b=a
    >>> a=2
    >>> b
    1
    >>>
    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]

  7. #7
    Membre émérite
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    a=1
    b=a
    a=2
    b
    >>>1
    oui, mais tu remarqueras que je n'ai pas modifié a
    tu introduis ici la deuxième difficulté: la différence entre les types muables et les types non muables

  8. #8
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 036
    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 036
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> a=2
    >>> b=a
    >>> id(a); id(b)
    3144884
    3144884
    b est exactement le même objet que a
    kango a raison

  9. #9
    Membre éprouvé
    Avatar de Luke spywoker
    Homme Profil pro
    Etudiant informatique autodidacte
    Inscrit en
    Juin 2010
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiant informatique autodidacte

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 077
    Par défaut
    Voici des liens menant a des documents de références crue et complet que je préfère également aux tutoriels éducatifs mais par lesquelles il faut quand meme passer:

    la doc officiel de Python 3.0.1: http://docs.python.org/release/3.0.1/download.html

    la doc officiel de Python 3.1.2: http://docs.python.org/release/3.1.2/download.html



    Je ne veux interferer avec ton future choix d'interface graphique mais j'ai le meme style de documentation(Crue, en anglais & en francais)pour Tkinter.

  10. #10
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 802
    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 802
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Luke spywoker Voir le message
    Je ne veux interferer avec ton future choix d'interface graphique mais j'ai le meme style de documentation(Crue, en anglais & en francais)pour Tkinter.
    Arf, moi je ne jure que par Qt. Toutefois je ne sais pas si cette librairie a été portée sous Python 3...
    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]

  11. #11
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 802
    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 802
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> a=2
    >>> b=a
    >>> id(a); id(b)
    3144884
    3144884


    kango a raison
    Exact. Même résultat avec Python 2.5

    Citation Envoyé par kango Voir le message
    oui, mais tu remarqueras que je n'ai pas modifié a
    tu introduis ici la deuxième difficulté: la différence entre les types muables et les types non muables
    Argh, comme la mécanique quantique. C'est vrai jusqu'à ce qu'on regarde et quand on regarde, là ça n'est plus vrai !!!

    Joli. J'aurais jamais pensé que a et b associaient le même objet uniquement jusqu'à ce qu'on modifie l'un ou l'autre. Merci à vous deux de ces exemples qui m'ont éclairé (surtout en passant par id)
    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. Réponses: 3
    Dernier message: 06/06/2007, 23h23
  2. Premiers pas dans python
    Par thance dans le forum Général Python
    Réponses: 20
    Dernier message: 13/03/2007, 16h54
  3. premiers pas dans Python - palindrome
    Par tarang dans le forum Général Python
    Réponses: 1
    Dernier message: 31/10/2006, 16h56
  4. Premier pas sous C++
    Par Lachdanan dans le forum C++
    Réponses: 8
    Dernier message: 11/10/2005, 14h39
  5. Réponses: 2
    Dernier message: 14/04/2004, 19h37

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