检查ip和子网掩码是否合法(python)

def check_ip(s):
    if len(s) != 4:
        return False
    for c in s:
        if not c.isdigit(): # 不是数字,或者为空
            return False
        else:
            c = int(c)
            if c>255 or c<0:# 不在0~255范围内
                return False
    return True
def check_mask(s):
    if check_ip(s):
        last = 0
        for c in s:
            c = int(c)
            if c!=255 and c>last: # 四个数中出现0在1前面的情况 
                return False
            last = c
            flag = -1
            while c: # 每个数中出现0在1前面的情况
                if c%2==1:
                    flag == 1 
                else:
                    if flag == 1:
                        return False 
                    flag = 0
                c = c>>1 
    else:
        return False  
    return True
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值