title: Converting IPv4 Address to a Hex IPv6 Address in Python
body: <p>Q: Write a program that prompts the user for an IP address then converts this to a base 10, binary and hex value. The program then converts the hex value to an RFC3056 IPv6 6to4 address.</p>
  
  <p>I have the base 10 and binary parts working but I can't seem to get my head around the hex part. Can the format string method be used somehow to accomplish the same thing? Or would I need to import the ipaddress module in this case?</p>
  
  <pre><code>#!/usr/bin/python3
  
  ip_address = input("Please enter a dot decimal IP Address: ")
  
  """This part converts to base 10"""
  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)
  
  """This part converts to base 2"""
  base2 = [format(int(x), '08b') for x in ip_address.split('.')]
  print("The IP Address in base 2 is: ", base2)
  
  """This part converts to hex"""
  hexIP = []
  [hexIP.append(hex(int(x))[2:].zfill(2)) for x in ip_address.split('.')]
  hexIP = "".join(hexIP)
  print("The IP Address in hex is: " , hexIP)
  </code></pre>
  
  <p>EDIT: Managed to convert the IP Address to hex value. Now how do I convert this hex value into IPv6 address?</p>