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

整数与IP地址间的转换

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

定义两个函数,
第一个将ip二进制转化为十进制
第二个将十进制转化为二进制再转化为合法ip
def ip2int(s):
    s = s.split('.')
    for n,i in enumerate(s):
        s[n] = f'{int(i):08b}'
    return int(''.join(s),2)
def int2ip(s):
    s = list(f'{int(s):032b}')
    for _ in range(4):
        s.append(''.join(s[0:8]))
        s = s[8:]
    return '.'.join(map(str,map(int, s, [2]*4)))

print(ip2int(input()))
print(int2ip(input()))


全部评论

相关推荐

05-12 17:28
已编辑
门头沟学院 硬件开发
ldf李鑫:不说公司名祝你以后天天遇到这样的公司
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务