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

整数与IP地址间的转换

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

# def transfer(a,b):
#     result_a = ''
#     for i in a.split('.'):
#         a = bin(int(i,10))[2:]
#         result_a += '0'*(8-len(a))+a
#     print(int(result_a,2))

#     b1 =bin(int(b))[2:]
#     b10 = '0'*(32-len(b1)) + b1 if len(b1)<32 else b1
#     b2=[]
#     b3 = []
#     for i in range(0,len(b10),8): 
#         b2.append(b10[i:i+8])
#     for i in b2:
#         b3.append(int(i,2))
#     print('.'.join(map(str,b3)))

# transfer(input(),input())

#第二次用到了rjust函数
def transfer(a,b):
    s1 = list(map(int,a.split('.')))
    b1 = ''
    for i in s1 :
        b1 += bin(i)[2:].rjust(8,'0')
    b2 = int(b1,2)
    print(b2)

    a1 = bin(int(b,10))[2:].rjust(32,'0')
    ip1 = []
    for i in range(4):
        ip1.append(str(int(a1[8*i:8*(i+1)],2)))
    print('.'.join(ip1))

transfer(input(),input())

全部评论

相关推荐

躺尸修仙中:因为很多92的也去卷中小厂,反正投递简历不要钱,面试不要钱,时间冲突就推,不冲突就面试积累经验
点赞 评论 收藏
分享
dongsheng66:如果想进大厂的话,在校经历没必要占这么大篇幅,可以把专业技能单独放一个专栏写,可以加个项目经历
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务