如何从平面列表中制作嵌套列表?

Raz*_*usX 2 python nested list python-3.x

需要翻这个例子列表

list = ["Hello","world","!!!"]
Run Code Online (Sandbox Code Playgroud)

进入这样的嵌套列表

new_list = ["Hello",["world",["!!!",None]]]
Run Code Online (Sandbox Code Playgroud)

对于给定的任何类型的平面列表。不知何故,我可以从嵌套列表中创建一个平面列表,但经过数小时的尝试后,我似乎无法自己或通过谷歌搜索找到解决方案。我在这里搜索过,但没有发现这个特定问题。

提前致谢,如果这是一个愚蠢的问题,我很抱歉。

Aja*_*234 5

您可以使用递归:

l = ["Hello","world","!!!"]
def to_list(d):
  return None if not d else [d[0], to_list(d[1:])]

print(to_list(l))
Run Code Online (Sandbox Code Playgroud)

输出:

['Hello', ['world', ['!!!', None]]]
Run Code Online (Sandbox Code Playgroud)