docs: def size_of_generator(generator, memory_efficient=True):
      """Get number of items in a generator function.
  
      - memory_efficient = True, 3 times slower, but memory_efficient.
      - memory_efficient = False, faster, but cost more memory.
  
      **中文文档**
  
      计算一个生成器函数中的元素的个数。使用memory_efficient=True的方法可以避免将生成器中的
      所有元素放入内存, 但是速度稍慢于memory_efficient=False的方法。
      """
      if memory_efficient:
          counter = 0
          for _ in generator:
              counter += 1
          return counter
      else:
          return len(list(generator))