萌新问,关于进制转换程序
num = input('please input a round(or input Q to end the program):')while num != 'Q':
num = int(num)
num16 = '%x'%num
num8 = '%o'%num
num2 = bin(num)
print(r'十进制 -> 十六进制:'+ num + r'->' + num16)
print(r'十进制 -> 八进制:'+ num + r'->' + num8)
print(r'十进制 -> 二进制:'+ num + r'->' + num2)
print(r'please input a round(or input Q to end the program):')
num = input('please input a round(or input Q to end the program):')
这个程序有问题,我自检了一下,应该是因为我的num16,8,2这几个参数的类型都是str。
为什么会这样?我的num已经整形处理了,num16,num8,num2都是由num运算得来的。
可以这样理解:“经过字符串格式化之后得到的结果,其类型都是str吗?” ps:不好意思最后一行重复了。以及不要在意塑料英语,只为了输入方便{:5_92:}
“经过字符串格式化之后得到的结果,其类型都是str吗?”
当然,简单理解字符串格式化就是将数据整合到字符串的指定占位符位置,生成的字符串
num = input('please input a round(or input Q to end the program):')
while num != 'Q':
num = int(num)
num16 = '%x'%num
num8 = '%o'%num
num2 = bin(num)
num = str(num)
print(r'十进制 -> 十六进制:'+ num + r'->' + num16)
print(r'十进制 -> 八进制:'+ num + r'->' + num8)
print(r'十进制 -> 二进制:'+ num + r'->' + num2)
num = input('please input a round(or input Q to end the program):')
加了一行,把num变成字符,这样可以跑出来。是我对print的理解不对。
页:
[1]