python基础

一、进制转换

10进制转16进制

hex(255)   #'0xff'

8进制转10进制

eval("000070000404")     #1879049220

 (eval只这样使用,只支持8进制,字符串中出现8或9等就会异常)

int("000070000404", 16)  #1879049220

 16进制转10进制

ip地址转整数

IpToLong = lambda x:sum([256**j*int(i) for j,i in enumerate(x.split('.')[::-1])])

IpToLong("192.168.1.5")  #3232235781

整数转IP地址

LongToIp = lambda x: '.'.join([str(x/(256**i)%256) for i in range(3,-1,-1)])
LongToIp(123456789)  #'7.91.205.21'
 

end

原文地址:https://www.cnblogs.com/code1992/p/11209482.html