|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
问题代码(甲老师):
- q = True
- while q:
- num = input('请输入一个整数(输入Q结束程序):')
- if num != 'Q':
- num = int(num)
- print('十进制 -> 十六进制 : %d -> 0x%x' % (num, num))
- print('十进制 -> 八进制 : %d -> 0o%o' % (num, num))
- print('十进制 -> 二进制 : %d -> ' % num, bin(num))
- else:
- q = False
复制代码 为什么 print('十进制 -> 二进制 : %d -> ' % num, bin(num)) 就一个%d字符串格式化符号,但是后面缺可以打印出bin(num)的值,这是为什么呢?
如图:
我自己编写的代码如下:
- while True:
- temp=input("请您输入一个整数(输入Q结束程序):")
- if 'q' in temp or 'Q' in temp:
- print('退出程序')
- break
- else:
- try:
- num=int(temp)
- a=bin(num)
- print( '十进制 ->十六进制:%d ->%#x'%(num,num))
- print('十进制->八进制:%d ->%#o'%(num,num))
- print('十进制->二进制:{} ->{}'.format(num,a))
- except:
- print('您输入的不是整数')
复制代码
我在二进制这个转化上利用了.format的方法。
因为print函数支持多个参数,举个例子
a = 1
b = 'good'
print(a, b)
|
|