IP子网掩码格式转换

def exchange_maskint(mask_int):
  bin_arr = ['0' for i in range(32)]
  for i in range(mask_int):
    bin_arr[i] = '1'
  tmpmask = [''.join(bin_arr[i * 8:i * 8 + 8]) for i in range(4)]
  tmpmask = [str(int(tmpstr, 2)) for tmpstr in tmpmask]
  return '.'.join(tmpmask)
if __name__ == '__main__':
  print exchange_maskint(24)
exchange_mask = lambda mask: sum(bin(int(i)).count('1') 
                                 for i in mask.split('.'))

print(exchange_mask('255.255.0.0'))
原文地址:https://www.cnblogs.com/flintlovesam/p/5729165.html