|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
输入数字,然后分别打印,转化为十六进制,八进制和二进制
答案的代码写得很简单,但我不太懂,用了个笨方法,得出同样结果,不知道对不对:
q=True
num1=0
num2=0
num3=0
while q:
num=input("请输入一个整数:(输入Q结束程序)")
if num!="Q":
num=int(num)
num1= '0x%x'%num
num2='0o%o'%num
num3=bin(num)
print("十进制 -> 十六进制 : "+str(num)+" ->"+str(num1))
print("十进制 -> 八进制 : "+str(num)+" ->"+str(num2))
print("十进制 -> 八进制 : "+str(num)+" ->"+str(num3))
else:
q=False
附答案方法:
1. q = True
2. while q:
3. num = input('请输入一个整数(输入Q结束程序):')
4. if num != 'Q':
5. num = int(num)
6. print('十进制 -> 十六进制 : %d -> 0x%x' % (num, num))
7. print('十进制 -> 八进制 : %d -> 0o%o' % (num, num))
8. print('十进制 -> 二进制 : %d -> ' % num, bin(num))
9. else:
10. q = False
num1、num2、num3 已经是 str 了所以,后面不需要再用 str() 转换,可以直接和其他字符串相加,所以,下面的代码:
- print("十进制 -> 十六进制 : "+str(num)+" ->"+str(num1))
- print("十进制 -> 八进制 : "+str(num)+" ->"+str(num2))
- print("十进制 -> 八进制 : "+str(num)+" ->"+str(num3))
复制代码
应该改为
- print("十进制 -> 十六进制 : "+str(num)+" ->" + num1)
- print("十进制 -> 八进制 : "+str(num)+" ->" + num2))
- print("十进制 -> 八进制 : "+str(num)+" ->" + num3)
复制代码
|
|