以二进制转换为八进制为例
s = input() # 请输入一个由1和0组成的二进制数字串
d = 0
while s:
type(s[0])
d = d + int(s[0])*2**(len(s)-1) # 如果s是八进制,只需将2变成8即可
s = s[1:]
print("转换成八进制数是:{:o}".format(d)) #如果要转换成其他进制,只需变化o即可。比如十六进制为x或X
ord()方法,本人并不是很懂
- 书上给的参考答案
s = input() # 请输入一个由1和0组成的二进制数字串
d = 0
while s:
d = d*2 + (ord(s[0]) -ord('0'))
s = s[1:]
print("转换成八进制数是:{:o}".format(d))