code: def lookup_family(hostname):
      '''
      Lookup a hostname and determine its address family. The first address returned
      will be AF_INET6 if the system is IPv6-enabled, and AF_INET otherwise.
      '''
      # If lookups fail, fall back to AF_INET sockets (and v4 addresses).
      fallback = socket.AF_INET
      try:
          hostnames = socket.getaddrinfo(
              hostname or None, None, socket.AF_UNSPEC, socket.SOCK_STREAM
          )
          if not hostnames:
              return fallback
          h = hostnames[0]
          return h[0]
      except socket.gaierror:
          return fallbacf lookup_family(hostname):
      '''
      Lookup a hostname and determine its address family. The first address returned
      will be AF_INET6 if the system is IPv6-enabled, and AF_INET otherwise.
      '''
      # If lookups fail, fall back to AF_INET sockets (and v4 addresses).
      fallback = socket.AF_INET
      try:
          hostnames = socket.getaddrinfo(
              hostname or None, None, socket.AF_UNSPEC, socket.SOCK_STREAM
          )
          if not hostnames:
              return fallback
          h = hostnames[0]
          return h[0]
      except socket.gaierror:
          return fallback
docs: Lookup a hostname and determine its address family. The first address returned
      will be AF_INET6 if the system is IPv6-enabled, and AF_INET otherwise.