python中将十进制数据转换为二进制、八进制和十六进制

在实际项目中,会经常遇到将数据进行转换。python中将十进制转换为二进制使用bin()函数,转换成八进制使用oct()函数,转换成十六进制使用hex()函数

练习:将十进制数据转换为二进制、八进制和十六进制

将十进制数据转换为二进制的5中方法,如下:

#将十进制转换为二进制
num=int(input('请输入一个十进制整数:'))   #将str类型转换成int类型
print(num,'的二进制数为:',bin(num))       #第一种写法,使用了可变的位置参数
print(str(num)+'的二进制数为:'+str(bin(num)))   #第二种写法,使用“+”作为连接符,“+”左右两边均为str类型
print('%s的二进制数为:%s' % (num,bin(num)))     #第三种写法,格式化字符串
print('{0}的二进制数为:{1}'.format(num,bin(num)))     #第三种写法,格式化字符串
print(f'{num}的二进制数为:{bin(num)}')        #第三种写法,格式化字符串

  执行结果:

 接下来将十进制转换成八进制,只需要从上面任意一种展示方法即可

num=int(input('请输入一个十进制整数:'))   #将str类型转换成int类型
print(f'{num}的八进制数为:{oct(num)}')

  执行结果:

将十进制转换为十六进制,使用hex()函数

num=int(input('请输入一个十进制整数:'))   #将str类型转换成int类型
print(f'{num}的十六进制数为:{hex(num)}')

  执行结果:

 扩展:

当输入不是十进制整数时,提示用户输入正确的数据

def fun():
    num=int(input('请输入一个十进制整数:'))   #将str类型转换成int类型
    print(f'{num}的十六进制数为:{hex(num)}')

if __name__ == '__main__':
    while True:
        try:
            fun()
            break  #当fun方法正确执行后退出程序
        except:
            print('只能输入十进制整数,请输入正确的数字')

  执行结果:

原文地址:https://www.cnblogs.com/wx170119/p/14998748.html