code: def single_pinyin(han, style, heteronym, errors='default', strict=True):
      
      num = ord(han)
      # 处理没有拼音的字符
      if num not in PINYIN_DICT:
          return handle_nopinyin(han, errors=errors, heteronym=heteronym)
  
      pys = PINYIN_DICT[num].split(',')  # 字的拼音列表
      if not heteronym:
          return [[_to_fixed(pys[0], style, strict=strict)]]
  
      # 输出多音字的多个读音
      # 临时存储已存在的拼音，避免多音字拼音转换为非音标风格出现重复。
      # TODO: change to use set
      # TODO: add test for cache
      py_cached = {}
      pinyins = []
      for i in pys:
          py = _to_fixed(i, style, strict=strict)
          if py in py_cached:
              continue
          py_cached[py] = py
          pinyins.append(py)
      return [pinyins]
docs: 单字拼音转换.
  
      :param han: 单个汉字
      :param errors: 指定如何处理没有拼音的字符，详情请参考
                     :py:func:`~pypinyin.pinyin`
      :param strict: 是否严格遵照《汉语拼音方案》来处理声母和韵母
      :return: 返回拼音列表，多音字会有多个拼音项
      :rtype: list