python课后作业求助。
t = 1while t == 1:
temp =input('请输入一个整数:')
guess = int (temp)
zimu =['a','b','c','d','e','f']
x = guess//16
y = guess%16
if y >=10:
y = zimu
print('十进制转化为十六进制:0x',end='')
print('x+y')
s = guess/8
j = guess%8
print('十进制转化为八进制:0o',end='')
print('s+j')
print('十进制转化为二进制:0b',end='')
print('bin(guess)')
while temp == 'Q':
t = 0
当输入108结果是这样的。
请输入一个整数:108
十进制转化为十六进制:0xx+y
十进制转化为八进制:0os+j
十进制转化为二进制:0bbin(guess)
请输入一个整数: 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
你的代码不能这样算哈,这样算是错误的,建议改成楼上的格式化法,或者用 Python 内置函数:
hex()十进制转十六进制
oct() 十进制转八进制
bin() 十进制转二进制
顺便把你代码多余的都去掉了,t 不需要 等于 1 然后再做 while 的条件,你可以直接写 1:
while 1:
temp = int(input('请输入一个整数:'))
print('十进制转化为十六进制:',hex(temp))
print('十进制转化为八进制:',oct(temp))
print('十进制转化为二进制:0b',bin(temp))
if temp == 'Q' or temp == 'q':
break Twilight6 发表于 2020-7-7 23:08
你的代码不能这样算哈,这样算是错误的,建议改成楼上的格式化法,或者用 Python 内置函数:
hex()...
那有没有什么办法可以把15和4拼起来变成154,把7和b拼起来变成7b。 Twilight6 发表于 2020-7-7 23:08
你的代码不能这样算哈,这样算是错误的,建议改成楼上的格式化法,或者用 Python 内置函数:
hex()...
输入q的时候会出现ValueError: invalid literal for int() with base 10: 'q'这样的情况。 breaki 发表于 2020-7-7 23:10
那有没有什么办法可以把15和4拼起来变成154,把7和b拼起来变成7b。
噗 我的代码发现也错了 忘记要 q 退出了 我的代码是错的哈
你按照楼上的来吧,不用看我的
页:
[1]