我试图编写一个输入嵌套元组的函数,并返回一个元组,其中所有元素都向后,包括其他元组中的元素(基本上镜像它).所以有了这个输入:
((1, (2, 3)), (4, 5))
Run Code Online (Sandbox Code Playgroud)
它应该返回:
((5, 4), ((3, 2), 1))
Run Code Online (Sandbox Code Playgroud)
我尝试了什么
def mirror(t):
n = 1
for i in t:
if isinstance(i, tuple):
mirror(i)
if n == len(t):
t = list(t)
t = t[::-1]
t = tuple(t)
n += 1
return t
Run Code Online (Sandbox Code Playgroud) 我试图编写一个函数来读取包含列表的列表,并返回相同的列表结构但没有元素.
def remove_from_list(l):
for e in l:
if isinstance(e, list):
remove_from_list(e)
else:
l.remove(e)
return l
Run Code Online (Sandbox Code Playgroud)
所以对于这样的输入:
[1, 2, [], [3,[4]], 5]
Run Code Online (Sandbox Code Playgroud)
我应该得到这样的东西:
[[], [[]]]
Run Code Online (Sandbox Code Playgroud)
我尝试了这些输入:
[1, 2, [], [3,[4]], 5]
[1, 2, [], [2,[3]], 2]
Run Code Online (Sandbox Code Playgroud)
得到这些输出:
[2, [], [[4]]]
[[], [[3]], 2]
Run Code Online (Sandbox Code Playgroud)
这是非常令人困惑的,因为两个列表的结构是相同的; 只有元素不同.因此,我不仅会犯错误,而且会得到另一个错误.帮助我的错误的功能和解释将非常感激.