题解 | #整数与IP地址间的转换#

整数与IP地址间的转换

https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea

ip = input().strip().split('.')
decimal_ip = input().strip()


o1 = []
o2 = []

for i in ip:
    s = bin(int(i))[2:]
    # 不够8位补零
    if len(s) < 8:
        s = '0'*(8-len(s)) + s
    
    o1.append(s)

b = '0b' + ''.join(o1)

decimal_ip = bin(int(decimal_ip))[2:]
decimal_ip = '0'*(32-len(decimal_ip)) + decimal_ip
for i in range(4):
    o2.append(str(int('0b' + decimal_ip[i * 8: i*8 + 8], 2)))

print(int(b, 2))
print('.'.join(o2))

全部评论

相关推荐

移动云能力 苏小妍 总包多3w左右
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务