Partage
  • Partager sur Facebook
  • Partager sur Twitter

Convertir une variable en str

Sujet résolu
    15 février 2016 à 12:25:31

    Bonjour à tous et à toutes,

    Je veux créer un algorithme qui retrouvera le jour en fonction de la date entrée, j'ai commencé avec les commandes simple (entrer les variables, faire les calculs). Je lance mon programme, entre le numéro du jour, le mois et l'année mais pyhon me dit :

       if mois == avril or mois ==juillet:
    NameError: name 'avril' is not defined

    J'ai demandé a un ami, et il me dit que python considère "avril" comme une variable en non comme une str, et qu'il faut transformer la variable en str, comment faire ?

    Je vous met le programme en entier :

    #Debut

    #Variables

    numero = int()
    mois = str()
    annee = int()
    jour = int()
    difference = int()

    #Programme
    jour=0
    numero = int(raw_input("Quel est le numero du jour recherche ? : "))
    mois = raw_input("Dans quel mois se situe le jour recherche ? :")
    annee = int(raw_input("Dans quelle annee, comprise entre 1600 et 2199, le jour recherche se situe-t-il ? :"))

    #Pour les deux derniers chiffres de l'annee :
    difference = 0
    if annee >= 1600 and annee <= 1699:
        difference = annee-1600
    elif annee >= 1700 and annee <= 1799:
        difference = annee-1700
    elif annee >=1800 and annee <=1899:
        difference = annee-1800
    elif annee>=1900 and annee<= 1999:
        difference = annee-1900
    elif annee>=2000 and annee<=2099:
        difference = annee-2000
    elif annee>= 2100 and annee<=2199:
        difference = annee-2100   
    jour = jour + difference/4

    #Pour le numero du jour :

    jour = jour +numero

    #Pour la valeur du mois :

    if mois == avril or mois ==juillet:
        jour == jour
    elif mois == janvier or mois == octobre:
        jour += 1
    elif mois== mai:
        jour+=2
    elif mois == aout:
        jour+=3
    elif mois== mars or mois== novembre or mois== fevrier:
        jour+=4
    elif mois == juin:
        jour+=5
    elif mois==septembre or mois== decembre:
        jour +=6
       
    #Pour l'annee bissextile
       
    if annee % 400 == 0 or (annee % 4 == 0 and annee % 100 != 0)and mois == janvier or mois == fevrier:
        jour-=1
       
    #Pour le siecle   

    if annee >=1600 and annee<= 1699 or annee >=2000 and annee<=2099:
        jour+=6
    elif annee>=1700 and annee<=1799 or annee>=2100 and annee<=2199:
        jour+=4
    elif annee>1800 and annee<=1899:
        jour+=2
    elif annee>=1900 and annee<=1999:
        jour+=1

    #Pour la valeur puis le jour recherche

    jour = jour%7

    if jour==1:
        print ("le",numero, mois, annee,"est un dimanche")
    elif jour==2:
        print ("le",numero, moi, annee,"est un lundi ")
    elif jour==3:
        print ("le",numero, moi, annee,"est un mardi ")
    elif jour==4:
        print ("le",numero, moi, annee,"est un mercredi ")
    elif jour==5:
        print ("le",numero, mois, annee,"est un jeudi ")
    elif jour==6:
        print ("le",numero, mois, annee,"est un vendredi ")   
    elif jour == 0:
        print("le",numero, mois, annee,"est un samedi ")

    #Fin

    PS : soyez gentil, je suis un débutant ^^

    • Partager sur Facebook
    • Partager sur Twitter
      15 février 2016 à 12:37:54

      Pour cela il te suffit de rajouter des guillemets simple ou double autour de ta chaîne de caractères ^^

      if mois == "avril" or mois == 'juillet':
          ....

      PS: Penses à utiliser la balise de code la prochaine fois ;)

      • Partager sur Facebook
      • Partager sur Twitter
        15 février 2016 à 12:43:37

        Oh, en effet, cela fonctionne.

        Bon, par contre mon programme, lui ne fonctionne pas ^^.

        Merci beaucoup !

        PS: je n'oublierais pas la balise code la prochaine fois !

        • Partager sur Facebook
        • Partager sur Twitter

        Convertir une variable en str

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown