Make script more Pythonic

This commit is contained in:
2020-07-10 22:50:25 +01:00
committed by GitHub
parent a865e5b823
commit c5459e772a

View File

@@ -1,32 +1,45 @@
ipv4Hex = '' #!/usr/bin/env python3
ipv6Hextet1 = '2002'
ipv6Hextet2 = ''
ipv6Hextet3 = ''
#take input
print('Enter IPv4 address:')
ipv4 = input()
#split input to octets def get_ipv4_from_user():
ipv4 = ipv4.split('.',4) user_in = input("Enter IPv4 address: ")
return user_in
#convert IPv4 address to hex string
for octet in ipv4:
if len(hex(int(octet))[2:])>1:
ipv4Hex += hex(int(octet))[2:]
else:
ipv4Hex += '0'
ipv4Hex += hex(int(octet))[2:]
#split into hextets def ipv4_to_ipv6(ipv4):
for i in range(4): ipv4Hex = ''
ipv6Hextet2 += (ipv4Hex[i]) ipv6Hextet1 = '2002'
for i in range(4,8): ipv6Hextet2 = ''
ipv6Hextet3 += (ipv4Hex[i]) ipv6Hextet3 = ''
#Convert to dec and back to remove leading zeros # Split input to octets
ipv6Hextet2 = hex(int(ipv6Hextet2,16))[2:] ipv4 = ipv4.split('.',4)
ipv6Hextet3 = hex(int(ipv6Hextet3,16))[2:]
# Convert IPv4 address to hex string
for octet in ipv4:
if len(hex(int(octet))[2:])>1:
ipv4Hex += hex(int(octet))[2:]
else:
ipv4Hex += '0'
ipv4Hex += hex(int(octet))[2:]
# Split into hextets
for i in range(4):
ipv6Hextet2 += (ipv4Hex[i])
for i in range(4,8):
ipv6Hextet3 += (ipv4Hex[i])
# Convert to dec and back to remove leading zeros
ipv6Hextet2 = hex(int(ipv6Hextet2,16))[2:]
ipv6Hextet3 = hex(int(ipv6Hextet3,16))[2:]
# Form 6to4 address
output_6to4 = f"{ipv6Hextet1}:{ipv6Hextet2}:{ipv6Hextet3}::/128"
return output_6to4
def main():
ipv4 = get_ipv4_from_user()
output = ipv4_to_ipv6(ipv4)
print(output)
#form and print 6to4 address
print(ipv6Hextet1+':'+ipv6Hextet2+':'+ipv6Hextet3+'::/128')