python 中进制转换及format(),int()函数用法

时间:2024-08-30 14:06:08

python中数值型变量好像只能是十进制形式表示,其他类型变量只能以字符串形式存在,可以通过format函数将int类型变量转换成其他进制字符串,如下所示:

v_code=15
# 2进制
x=format(v_code, '#b') # '0b1111' 等效于:x=bin(v_code)
y=format(v_code, 'b') # '1111'
# 8进制
x=format(v_code, '#o') # '0o17', 等效于:x=oct(v_code)
y=format(v_code, 'o') # '17'
# 16进制
x=format(v_code, '#x') # '0xf', 等效于:x=hex(v_code)
y=format(v_code, 'x') # 'f'
z=format(v_code, '#X') # 'OXF'
z=format(v_code, 'X') # 'F'

其中,通过格式符#决定是否显示前置符号,通过f和F决定16进制中字符的大小写。

将其他进制字符串转换成10进制数,用到函数int,如下:

z='F'
x=int(z,16) #将16进制字符串转换为int值

其中进制可选2,10,8,16,而缺省时为10.