Cuando escribo enteros pequeños con un 0 en python, dan resultados raros. ¿Por qué es esto?¿Qué significan los números que comienzan con 0 en python?
>>> 011
9
>>> 0100
64
>>> 027
23
Nota: Python versión 2.7.3 He probado esto en Python 3.0, y al parecer esto ahora es un error. Por lo tanto, es algo específico de la versión.
Editar: aunque aparentemente todavía enteros:
>>> type(027)
`<type 'int'>`
Quizás el asterisco doble no es la manera más clara de indicar una exponencial. Si se trata de una Stataroverflow stantard, o en cualquier otro lugar, debe ser cambiado. –
@DavidL: En Python, ['**' es el operador exponencial] (https://docs.python.org/2/tutorial/introduction.html#numbers), y ['^' es XOR bit a bit] (https : //wiki.python.org/moin/BitwiseOperators). – unutbu
Solo tenga en cuenta que, en Python 3, ingresar '011' dará como resultado' SyntaxError: invalid token'. Use '0o11' en su lugar. – chenghuayang