Python代码阅读(第20篇): 展开嵌套列表2

您在本文中阅读的代码实现了将基本元素和列表元素的列表扩展为新列表的功能。

[En]

The code you read in this article implements the ability to expand a list of base and list elements into a new list.

spread

def spread(arg):
  ret = []
  for i in arg:
    ret.extend(i) if isinstance(i, list) else ret.append(i)
  return ret

EXAMPLES
spread([1, 2, 3, [4, 5, 6], [7], 8, 9]) # [1, 2, 3, 4, 5, 6, 7, 8, 9]

spread函数将一个列表的元素平铺到一个新的列表中。 spread遍历原列表所有元素,如果元素是一个 list,则使用 list.extend(),否则使用 list.append()

isinstance(object, classinfo)用于判断输入 object是否属于 classinfo类型的实例或是其子类。在这里用于判断原始列表中的元素是否是一个 list

ret.extend(i)ret += i一样,使用 i的内容扩展 ret,将列表 i中的元素逐个加入到列表 ret中。类似于 ret[len(ret):len(ret)] = i操作。

ret.append(i)i作为一个元素添加到列表 ret的末尾,和 ret[len(ret):len(ret)] = [i]一样。

Original: https://www.cnblogs.com/felixz/p/15434423.html
Author: FelixZ
Title: Python代码阅读(第20篇): 展开嵌套列表2

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/511050/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球