GNT sans publicité, site mobile, fonctionnalitées exclusives...

0 trop significatif (calendar)

Le
Do Re Mi chel La Si Do
Bonjour !

J'ai un petit problème ;


Ça, ça marche :
import calendar
calendar.prmonth(2005,9)


Ça, ça plante :
import calendar
calendar.prmonth(2005,09)

Le traceback :
File "D:\dev\Python\ess3.py", line 2
calendar.prmonth(2005,09)
^
SyntaxError: invalid token


L'erreur provient du '0' devant le '9'. Or, le paramètre est un entier.
Je ne dois pas être bien réveillé, car ya1truc que je ne pige pas.




J'ai trouvé !

Le '0' bascule l'entier en octal, et '09' est un octal incorrect.


Bon , je vais quand même laisser le message ; ça pourra servir à
d'autres.


Pour info, le script réel (avec support du français), c'est :
import calendar,locale
locale.setlocale(locale.LC_ALL, "")
calendar.setfirstweekday(calendar.MONDAY)
calendar.prmonth(2005,9)


Bonne journée.

Michel Claveau
Lire la réponse

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Christophe Cavalaria
Le #457053
Do Re Mi chel La Si Do wrote:

Bonjour !

J'ai un petit problème ;


Ça, ça marche :
import calendar
calendar.prmonth(2005,9)


Ça, ça plante :
import calendar
calendar.prmonth(2005,09)

Le traceback :
File "D:devPythoness3.py", line 2
calendar.prmonth(2005,09)
^
SyntaxError: invalid token


L'erreur provient du '0' devant le '9'. Or, le paramètre est un entier.
Je ne dois pas être bien réveillé, car ya1truc que je ne pige pas.




J'ai trouvé !

Le '0' bascule l'entier en octal, et '09' est un octal incorrect.


...Bon , je vais quand même laisser le message ; ça pourra servir à
d'autres.


Pour info, le script réel (avec support du français), c'est :
import calendar,locale
locale.setlocale(locale.LC_ALL, "")
calendar.setfirstweekday(calendar.MONDAY)
calendar.prmonth(2005,9)


Bonne journée.

Michel Claveau


La notation 0... sert à écrire des nombre en octal. L'octal comme tout le
monde sait est une notation en base 8 et donc seul les chiffres de 0 à 7
sont autorisés.

Suivre les réponses
Poster une réponse
Anonyme