Python 2.6 / 2.7
我有以下程序。
print 0b10
def p_m(x):
print x
p_m(bin(2))
输出:
2
0b10
我想在p_m()中打印的是“ 0b10”的2(十进制值),这是我作为第一个参数传递给p_m()并在变量x中获得该值“ 0b10”并仅打印该x的内容。
为什么函数内的
print x
不能像程序的第一行一样工作?我应该如何在p_m()的print语句中将“ 0b10”的值打印为2。
最佳答案
0b10
是一个整数。 bin(2)
是'0b10',它是一个字符串。您必须打印int('0b10', 2)
才能打印2