2009-12-03 10 views
39

Je suis un débutant en python et je suis en train d'utiliser un numéro octal dans mon script, mais quand je l'essaye, il me retourne cette erreur:jeton non valide lors de l'utilisation des numéros Octal

>>> a = 010 
SyntaxError: invalid token (<pyshell#0>, line 1) 
>>> 01 
SyntaxError: invalid token (<pyshell#1>, line 1) 

Il y a Quelque chose ne va pas avec mon code? J'utilise Python3 (et en lisant un livre python 2.2)

+0

Il peut y avoir un problème avec votre installation Python ou le shell que vous utilisez. Essayez la même chose sur http://shell.appspot.com et voyez si vous obtenez les mêmes erreurs. –

Répondre

58

Essayez 0o10, peut être à cause de python 3, ou pyshell lui-même.

PEP dit,

octal literals must now be specified with a leading "0o" or "0O" instead of "0";

http://www.python.org/dev/peps/pep-3127/

+12

Je souhaite que chaque langue requise ceci pour les nombres octaux; comment stupide était en utilisant un plomb 0. Maintenant, si nous pouvons simplement obtenir le soutien de 0NNN (pour sexagésimal) et mettre les numéros de base 64 dans notre code. –

+2

Pensez aux possibilités pour les constantes magiques ... ne plus être contraint à '0xdeadbeef', etc.: o –

+0

Merci S. Mark, en utilisant le" Oo "fonctionne très bien. – Rafael