进制转换代码中的问题
q = Truewhile 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
1. 上述代码中,print('十进制 -> 十六进制 : %d -> 0x%x' % (num, num)),%d这里是指代正整数吗?可以换成abc吗?
2. 上述代码中,print('十进制 -> 十六进制 : %d -> 0x%x' % (num, num)),最后(num, num)起什么作用?
3. q = True,q = False分别是什么作用?
1,是的,代表整数,但是不能换,换了就是别的意思了
2,输出格式不同,一个是以十进制形式输出,一个是以八进制输出
3,用于标记是否继续,while q就是while q == True,
你可以改成while True 和 break,效果一样
1. d%是格式化,例如:
>>> a = 5
>>> print('a是%d' % a)
a是5
把字符串里的%d换成了a
详情见 015字符串:格式化
2.也是格式化,d%是直接把数代入字符串
%o是把数字换成八进制代入字符串
3.while循环条件是,while后的东西为真
一开始给q赋值为True,是为了进入循环
当num!=‘Q’时就会给q赋值为Flase
就会跳出循环 这都啥年头了,就别用%格式字符串了吧……
页:
[1]