code: def otu_name(tax):
      
      extract_name = lambda lvl: "_".join(lvl.split("_")[2:])
      spname = "spp."
      for lvl in tax[::-1]:
          if len(lvl) <= 3:
              continue
          if lvl.startswith("s"):
              spname = extract_name(lvl)
          elif lvl.startswith("g"):
              return "{}_{}".format(extract_name(lvl), spname)
          else:
              if spname != "spp.":
                  return spname
              else:
                  return "Unclassified_{}".format(extract_name(lvl))
docs: Determine a simple Genus-species identifier for an OTU, if possible.
      If OTU is not identified to the species level, name it as
      Unclassified (familly/genus/etc...).
  
      :type tax: list
      :param tax: QIIME-style taxonomy identifiers, e.g.
                   ["k__Bacteria", u"p__Firmicutes", u"c__Bacilli", ...
  
      :rtype: str
      :return: Returns genus-species identifier based on identified taxonomical
               level.