【发布时间】:2020-06-13 19:44:31
【问题描述】:
我应该怎么做才能将 (1,2,3) 的元组更改为 ((1,2),3)。 我正在尝试使用代码
index_transform = [(lambda (a,b,c) : ((a,b),c)) (x) for x in index]
但我收到错误无效语法
【问题讨论】:
标签: python-3.x data-science data-analysis
我应该怎么做才能将 (1,2,3) 的元组更改为 ((1,2),3)。 我正在尝试使用代码
index_transform = [(lambda (a,b,c) : ((a,b),c)) (x) for x in index]
但我收到错误无效语法
【问题讨论】:
标签: python-3.x data-science data-analysis
您收到错误是因为您混淆了 lambda 函数和列表理解。在这种情况下,您不需要遍历数组的每个元素。如果数组没有改变它的形状,你应该这样编辑 lambda 函数:
index=(1,2,3)
foo = lambda a: ((a[0],a[1]),a[2])
index_transform = foo(index)
print(index_transform)
【讨论】:
orig_tup=(1,2,3)
##tuple slicing with square brackets
tup_of_tups=(orig_tup[0:2], orig_tup[2:3])
print(tup_of_tups)
【讨论】: