我有一个列表:
List = [[['1','2'],['2','4']],[['1','4'],['4','8']],[['53','8'],['8','2'],['2','82']]]
我要向列表添加反向数据
成为:
[[['1','2'],['2','4'],['2','1'],['4','2']],[['1','4'],['4','8'],['4','1'],['8','4']],[['53','8'],['8','2'],['2','82'],['8','53'],['2','8'],['82','2']]]
答案 0 :(得分:1)
在将其与原始子列表合并之前,您可以使用嵌套列表理解来遍历子列表并反转其中的子列表:
[l + [s[::-1] for s in l] for l in List]
答案 1 :(得分:1)
您可以遍历列表,并使用相反的元素对其进行扩展:
List = [[['1','2'],['2','4']],[['1','4'],['4','8']],[['53','8'],['8','2'],['2','82']]]
for sublist in List:
sublist.extend([pair[::-1] for pair in sublist])
最后,List
将是:
[[['1', '2'], ['2', '4'], ['2', '1'], ['4', '2']],
[['1', '4'], ['4', '8'], ['4', '1'], ['8', '4']],
[['53', '8'], ['8', '2'], ['2', '82'], ['8', '53'], ['2', '8'], ['82', '2']]]
答案 2 :(得分:0)
尽管鉴于我使用的函数的初衷是对序列进行反向迭代,但此答案可能不是最Python化的答案。恕我直言,这以简洁,易读的方式实现了您的目标。
我已经使用了功能reversed()
。此函数将基于原始列表返回一个逆序list_reverseiterator
对象。考虑到该返回对象不是列表,我们可以像这样使用list
类型更改函数:list(reversed(List))
,这将为您提供反向的原始列表。然后,原始候选项List
会附加新反转的列表,以创建您请求的所需输出。
List = [[['1','2'],['2','4']],[['1','4'],['4','8']],[['53','8'],['8','2'],['2','82']]]
print("Here is the original list: ", List)
ListReverse = list(reversed(List))
List.append(ListReverse)
print("Here is your final list: ", List)
虽然打印报表是原始询问的附件,但我已将其包括在内,以便您验证有效的解决方案。