一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Python如何把十进制数转换成ip地址 Python把十进制数转换成ip地址代码

时间:2020-05-25 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下Python把十进制数转换成ip地址代码,代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

需要把ip地址转换为10进制数,然后也可以把10进制数转化为ip地址,计算机ping这个十进制数可以ping通对应的ip地址,说明已经实现功能

代码如下

# 引用正则来三等分字符串
import re

# 转换成二进制数
bi = "{0:b}".format(18223104)
# 补齐32位
bi = "0"*(32-len(bi))+bi
# 8个一组算出每8个数字的十进制,然后再加“,”分隔
ret_ip_string = '.'.join(list(map(lambda x:str(int(x,2)),re.findall(r'.{8}',bi))))
# 打印ip字符串
print(ret_ip_string)

也可以封装成函数,便于调用

def int32_to_ip(int32):
  import re
  bi = "{0:b}".format(int32)
  bi = "0" * (32 - len(bi)) + bi

  ret_ip_string = '.'.join(list(map(lambda x: str(int(x, 2)), re.findall(r'.{8}', bi))))
  return ret_ip_string

if __name__ == '__main__':
  ip = int32_to_ip(18223104)
  print(ip)

热门栏目