# -*- coding:utf-8 -*- import ipaddress,sys def ip2hex_bin(file,*args,**kwargs): try: with open(file,‘r‘,encoding=‘utf-8‘) as f: allip = f.readlines() ip = [ ipaddress.IPv4Address(ip.strip(‘\n‘)) for ip in allip ] if flag == ‘-i‘: for i in ip: print(hex(int(i))) else: for i in ip: print(bin(int(i))) except Exception as e: print(e) def hex_bin2ip(file,*args,**kwargs): try: with open(file,‘r‘,encoding=‘utf-8‘) as f: allip = f.readlines() for i in allip: a = i.strip(‘\n‘) print(ipaddress.IPv4Address(int(a,0))) except Exception as e: print(e) if __name__ == ‘__main__‘: try: flag = sys.argv[1] file = sys.argv[2] IP = { ‘-i‘:ip2hex_bin, ‘-b‘:ip2hex_bin, ‘-h‘:hex_bin2ip } IP.get(flag)(file) except Exception as e: print(sys.argv[0],‘[-i|-b|-h] file‘)
github链接地址:https://github.com/babyshen/Python/blob/master/ip_conversion.py
本文出自 “baby神” 博客,请务必保留此出处http://babyshen.blog.51cto.com/8405584/1875142
原文:http://babyshen.blog.51cto.com/8405584/1875142