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 :

Python 3.9 Problème de type de variable


Sujet :

Python

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2022
    Messages : 8
    Par défaut Python 3.9 Problème de type de variable
    Bonjour,

    Je suis un débutant en codage Python (ca fait 2-3 jours que je me suis lancé dessus).
    J'ai parcourus des tuto basique mais je me retrouve souvent bloquer devant des problème de "TYPE" de variable alors que je les déclares en amont.
    Du coup mes comparaisons produisent des erreurs et mon code se fait pas.

    Si dessous un exemple basique avec un IF.

    ===============================
    Mode code :
    ===============================
    Compteur_Profit_Max_BUY = int

    while True:
    Compteur_Profit_Max_BUY = int
    print("Compteur_Profit_Max_BUY 1 :", type(Compteur_Profit_Max_BUY))

    if (Compteur_Profit_Max_BUY > 10):
    # Envoyer l'ordre
    print("Compteur_Profit_Max_BUY 2 :", Compteur_Profit_Max_BUY)

    else :
    Compteur_Profit_Max_BUY = Compteur_Profit_Max_BUY + 1
    print("Compteur_Profit_Max_BUY 3 :", Compteur_Profit_Max_BUY)

    ===============================
    Resultat du débugage :
    ===============================
    Compteur_Profit_Max_BUY 1 : <class 'type'>
    Traceback (most recent call last):
    File "C:\Users\ludov\PycharmProjects\Ludo_Test\Test fonction.py", line 7, in <module>
    if (Compteur_Profit_Max_BUY > 10):
    TypeError: '>' not supported between instances of 'type' and 'int'

    Process finished with exit code 1

    ===============================

    Donc la il me dit que ma variable Compteur_Profit_Max_BUY est un format TYPe alors que je la déclare en INT.
    Je comprends pas pourquoi.

    Ceci n'est qu'un exemple mais j'ai souvent le probléme dans mon code.

    Merci pour votre aide !

  2. #2
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par défaut
    Bonjour
    Citation Envoyé par sacom Voir le message
    des problème de "TYPE" de variable alors que je les déclares en amont.

    Compteur_Profit_Max_BUY est un format TYPe alors que je la déclare en INT.
    En fait, en python on ne déclare pas une variable (et encore moins avec un type)
    = est une assignation (de valeur), pas une assignation de type. En fait le type de la valeur va donner le type de la variable

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 722
    Par défaut
    Citation Envoyé par sacom Voir le message
    Donc la il me dit que ma variable Compteur_Profit_Max_BUY est un format TYPe alors que je la déclare en INT.
    Je comprends pas pourquoi.
    Si vous aviez ouvert un tuto... vous sauriez qu'avec Python, une variable est associée au dernier objet qui lui a été assigné.
    Donc en écrivant Compteur_Profit_Max_BUY = int, on assigne la class int à la variable (ce qui est un type) et qu'on ne peut pas comparer un type avec un "int".

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

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    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 830
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par sacom Voir le message
    J'ai parcourus des tuto basique mais je me retrouve souvent bloquer devant des problème de "TYPE" de variable alors que je les déclares en amont.
    Me semblent pas franchement au top les tutos que tu utilises. Tu devrais télécharger le mien. Lui il ne te parlera jamais de "déclaration de variables en amont"...

    Citation Envoyé par sacom Voir le message
    Donc la il me dit que ma variable Compteur_Profit_Max_BUY est un format TYPe alors que je la déclare en INT.
    Je comprends pas pourquoi.
    Parce que "int" c'est bel et bien un type. Donc en écrivant Compteur_Truc=int tu indiques "cette variable Compteur_Truc est un <<type>>".

    Petit conseil: évite des variables au nom trop long. Le CamelCase (les majuscules en début de mot) permettent justement d'identifier les mots. Pas besoin en plus d'y mettre des underscores. Quand tu en seras à l'objet, si tu fais de même tu auras des variables style Mon_Objet_Qui_Fait_Papa_Maman.Sa_Variable_Qui_Le_Fait_Aussi. Rajoutes-y autour une expression et tu auras une ligne illisible.
    Et pas besoin de parenthèses au if.
    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
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2022
    Messages : 8
    Par défaut
    Merci pour vos réponses !
    Du coup j'ai facilement corrige le problème.

    Le coup des déclarations en amont est un habitude de ma programmation sur automate, ou du coup déclarer les variables c'est essentiel.

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 722
    Par défaut
    Citation Envoyé par sacom Voir le message
    déclarer les variables c'est essentiel.
    Si c'est essentiel, vous avez la possibilité de le faire (mais avec la syntaxe qui va bien)... et d'utiliser des packages externes pour effectuer une vérification "statique" du code (avant de l'exécuter).

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

  7. #7
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2022
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2022
    Messages : 8
    Par défaut
    Dans le cas présent non.
    En tout cas maintenant j'ai un tuto assez complet grâce à @Sve@r

  8. #8
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 830
    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 830
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par sacom Voir le message
    Le coup des déclarations en amont est un habitude de ma programmation sur automate, ou du coup déclarer les variables c'est essentiel.
    Chaque langage a ses contraintes. En C tu déclares tes variables, pas en Python. En Python tu as besoin d'une variable tu la crées en lui donnant une valeur et à ce moment là elle prend le type de la valeur qu'on lui met.
    Et comme le dit wiztricks tu peux si tu en as envie indiquer son type "attendu" via les annotations mais Python ne checke pas la cohérence "type indiqué/type réel" (mais certains outils d'analyse de code peuvent le faire)
    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]

  9. #9
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 722
    Par défaut
    Citation Envoyé par sacom Voir le message
    En tout cas maintenant j'ai un tuto assez complet grâce à @Sve@r
    Si vous savez déjà un peu programmer, vous préférerez sans doute le tutoriel livré avec Python: il est complet et maintenu à jour par l'équipe de développement du langage.

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

Discussions similaires

  1. [PHP 5.3] problème de type de variable
    Par Godard dans le forum Langage
    Réponses: 2
    Dernier message: 30/07/2010, 09h17
  2. Réponses: 2
    Dernier message: 22/12/2009, 22h29
  3. Problème de type de variable avec la fonction find
    Par Sarune dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 12/11/2008, 17h06
  4. problème de type de variable
    Par miketidy dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 17/07/2008, 16h01
  5. problème de type de variables
    Par Jasmine80 dans le forum Langage
    Réponses: 4
    Dernier message: 16/06/2008, 12h40

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