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

整数与IP地址间的转换

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

import sys

ipstr=input()
ipstrnum=input()
iparr=ipstr.split(".")
ipnum=""  #二进制ipnum
for ip in iparr:
    ipbin=bin(int(ip)) # 十进制转二进制
    ipbin=ipbin.replace("0b","")

  
    while(len(ipbin)<8):
        ipbin="0"+ipbin

    ipnum=ipnum+ipbin
# 二进制转十进制
ipaddress=int(ipnum,2)
print(ipaddress)

# 处理十进制转换成二进制IP地址
binip=bin(int(ipstrnum))
binip=binip[2:]
# print(binip)
# 反转字符串

fanbinip=binip[::-1]
ipdaoarr=[]
for i in range(0,4):
    ipdaoarr.append(fanbinip[8*i:8*(i+1)][::-1])
iparr=ipdaoarr[::-1]
ipendstr=""
for ip in iparr:
    ipendstr=ipendstr+str(int(ip,2))+"."
print(ipendstr[:-1])


一步一个脚印

全部评论

相关推荐

04-17 23:48
西北大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务