I've got a problem when converting an octal number to a string.
p = 01212
k = str(p)
print k
The result is 650
but I need 01212
. How can I do this? Thanks in advance.
Your number p
is the actual value rather than the representation of that value. So it's actually 65010
, 12128
and 28a16
, all at the same time.
If you want to see it as octal, just use:
print oct(p)
as per the following transcript:
>>> p = 01212
>>> print p
650
>>> print oct(p)
01212
That's for Python 2 (which you appear to be using since you use the 0NNN
variant of the octal literal rather than 0oNNN
).
Python 3 has a slightly different representation:
>>> p = 0o1212
>>> print (p)
650
>>> print (oct(p))
0o1212