a_ip:10.10.15.100b_ip:10.10.15.101c_ip:10.10.10.100netmask:255.255.255.0 def numtobinary(num): binary = '' a = int(num) while 1: if a == 0 or a == 1: binary = '%s%s' % (str(a), binary) break num = a % 2 binary = '%s%s' % (str(num), binary) a = a / 2
描述 子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据.子网掩码与IP地址结构相同,是32位二进制数,其中网络号部分全为“1”和主机号部分全为“0”.利用子网掩码可以判断两台主机是否中同一子网中.若两台主机的IP地址分别与它们的子网掩码相“与”后的结果相同,则说明这两台主机在同一子网中. 示例:I P 地址 192.168.0.1子网掩码 255.255.255.0 转化为二进制进行运算: I P 地址 11010000.10101000.00000000.00000001
Can anyone think of an algorithm to put all of the addresses between two others and put them in a list (using python)? For example: findIPs('111.111.111.0', '111.111.111.3') Should return ('111.111.111.0', '111.111.111.1', '111.111.111.2', '111.111.1
int_ip = lambda x: '.'.join([str(x/(256**i)%256) for i in range(3,-1,-1)]) ip_int = lambda x:sum([256**j*int(i) for j,i in enumerate(x.split('.')[::-1])]) def get_ips(ip1,ip2): f=open('ips.txt','w') ip1_num = ip_int(ip1) ip2_num = ip_int(ip2) for i i
def common_data(list1, list2): result = False for x in list1: for y in list2: if x == y: result = True return result print(common_data([,,,,], [,,,,])) print(common_data([,,,,], [,,,]))