【问题标题】:Convert list comprehension to for loop [closed]将列表理解转换为 for 循环 [关闭]
【发布时间】:2018-10-30 15:49:24
【问题描述】:

this Huffman code,我找到了以下代码。

heap = [[wt, [sym, ""]] for sym, wt in symb2freq.items()]

是否可以将这种列表压缩转换为 for 循环?

【问题讨论】:

  • 是的,有可能
  • 你希望输出是什么?
  • heap = [] for sym, wt in symb2freq.items(): heap.append([wt, [sym, ""]])
  • @DanielRoseman 输出将是列表列表的列表

标签: python python-3.x huffman-code


【解决方案1】:

是的,您可以:

heap = []
for sym, wt in symb2freq.items():
    heap.append([wt, [sym, ""]])

【讨论】:

  • @N Chauhan append 接受一个参数,对吧?
  • 是的。它将给定的项目添加到列表的末尾。
  • 完美,我明白了。
【解决方案2】:

这对我有用

heap = [[wt, [sym, ""]] for sym, wt in enumerate(symb2freq.items())]

【讨论】:

  • 这并没有给出相同的结果,仍然是一个列表理解......
猜你喜欢
  • 2020-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-06
相关资源
最近更新 更多