python核心编程第六章练习6-11
6-11.
转换。
(a)创建一个从整型到IP地址的转换,如下格式:www.xxx.yyy.zzz。
(b)更新你的程序,使之可以逆转换。
【答案】
(a)代码如下:
Input_number = abs(int(raw_input('Please input a number: '))) x3 = x2 = x1 = x0 = 0 x3 = Input_number / (256 ** 3) if x3 > 255: tmp = x3 x3 = 255 else: tmp = x3 x2 = (Input_number - 256 ** 3 * tmp) / (256 ** 2) x1 = (Input_number - 256 ** 3 * tmp - 256 ** 2 * x2) / (256 ** 1) x0 = Input_number - 256 ** 3 * tmp - 256 ** 2 * x2 - 256 * x1 print '%d.%d.%d.%d' % (x3, x2, x1, x0)
(b)代码如下:
Input_IP = raw_input('Pleae input an IP address ... ') IP = str.split(Input_IP, '.') Data = 256 ** 3 * int(IP[0]) + 256 ** 2 * int(IP[1])+ 256 * int(IP[2]) + int(IP[3]) print 'the number is %d' % Data
以上不是自己做的,这个题算法要求不明确,就按照这个来吧。