题解 | #整数与IP地址间的转换#
整数与IP地址间的转换
http://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea
ip = input().split('.') ip_dec = int(input()) # 1、ip转10 res_1 = '' res_2 = '' n_2 = bin(ip_dec)[2:] ip_bin = '0'* (32-len(n_2)) + n_2 for i in range(4): n_1 = bin(int(ip[i]))[2:] ip[i] = '0'*(8-len(n_1)) + n_1 res_1 += ip[i] # 2、10转ip res_2 = res_2 + str(int(ip_bin[i*8:i*8+8],2)) + '.' print(int(res_1,2))# 转换后的10进制ip print(res_2[:-1])
进制转换
(1)十进制转其他进制
print("十进制数为:", dec)
print("转换为二进制为:", bin(dec))
print("转换为八进制为:", oct(dec))
print("转换为十六进制为:", hex(dec))
(2)其他进制转为十进制
>>> int('1101',2)
13
>>> int('0o226',8) #00226 0:阿拉伯数字零 o:小写英文字母 o 226:八进制数
150
>>> int('0x96',16)
150