我想将从文件中读取的十进制格式 (192.168.65.72) 的 IP 地址转换为二进制格式的 IP 地址 {110000001010100001000001010001000}。我正在从文件中读取十进制格式的 IP 地址。找到代码片段下面。
/*contains 192.168.65.72*/
filter = open("filter.txt", "r")
for line in filter:
bytePattern = "([01]?\d\d?|2[0-4]\d|25[0-5])"
regObj = re.compile("\.".join([bytePattern]*4))
for match in regObj.finditer(line):
m1,m2,m3,m4 = match.groups()
print "%s %s %s %s" %(m1, m2, m3, m4)
我想将 m1、m2、m3 和 m4 分别转换成一个 8 位二进制值。我想不出办法做到这一点。我是 python 的新手。任何帮助将不胜感激。
干杯。
最佳答案
''.join([ bin(int(x))[2:].rjust(8,'0') for x in '123.123.123.123'.split('.')])
关于python - IP地址转换使用Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3465099/