题解 | #整数与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()))