我需要一个将用户输入的 IPv4 地址转换为二进制和 Base 10 地址的程序。像这样的东西:
input: 142.55.33.1
output (base 10): [2385977601]
output (base 2): [10001110 00110111 00100001 00000001]
到目前为止,我已经设法将其转换为 base10 地址,但我似乎无法解决 base 2 问题:
#!/usr/bin/python3
ip_address = input("Please enter a dot decimal IP Address: ")
#splits the user entered IP address on the dot
ListA = ip_address.split(".")
ListA = list(map(int, ListA))
ListA = ListA[0]*(256**3) + ListA[1]*(256**2) + ListA[2]*(256**1) + ListA[3]
print("The IP Address in base 10 is: " , ListA)
#attempt at binary conversion (failing)
#ListA = ListA[0]*(2**3) + ListA[1]*(2**2) + ListA[2]*(2**1) + ListA[3]
#print("The IP Address in base 2 is: " , ListA)
任何帮助将不胜感激。谢谢你。