|
发表于 2020-11-19 16:26:46
|
显示全部楼层
按照你完整的代码来看,应该是你搞错了缩进- char='abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPRSTUVWXYZ'
- q=True
- while q:
- word=input('请输入转换的数字:')
- for each in word:
- if each in char:
- print('请重新输入!')
- break
- if word!='Q':
- word=int(word)
- print('十进制 -> 十六进制 : %d -> 0x%x' % (word,word))
- print('十进制 -> 八进制 : %d -> 0o%o' %(word,word))
- print('十进制 -> 二进制 :%d->' % word,bin(word))
- else:
- q=False
复制代码
而且你这个判断太死了,如果输入了中文和特殊符号,肯定报错的,可以改成这样- q=True
- while q:
- word=input('请输入转换的数字:')
- if not word.isdigit():
- print('请重新输入!')
- continue
- if word!='Q':
- word=int(word)
- print('十进制 -> 十六进制 : %d -> 0x%x' % (word,word))
- print('十进制 -> 八进制 : %d -> 0o%o' %(word,word))
- print('十进制 -> 二进制 :%d->' % word,bin(word))
- else:
- q=False
复制代码 |
|