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

整数与IP地址间的转换

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

num = input()
ip = input()
num_list = num.split('.') #分解为列表
a = ''
for i in num_list:
    rst = bin(int(i))[2:].rjust(8, '0') #补码
    a += rst
print(int(a, 2))
b = bin(int(ip))[2:].rjust(32, '0') # 补齐4*8=32位
x = ''
for i in range(1, 5): #笨拙的切片 应该有更好的方法
    x += str(int(b[(i - 1) * 8:i * 8], 2)) + '.'
print(x[:-1])# 去掉最后一个点

#华为机试#
全部评论

相关推荐

拒绝无效加班的小师弟很中意你:求职意向没有,年龄、课程冗余信息可以删掉,需要提升项目经历。排版需要修改。
点赞 评论 收藏
分享
牛客279957775号:铁暗恋
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务