我有两个不同的列表,如下面的
A = [(Apple, Mango)]
B = [Grapes]
现在我想得到一个合并列表如下
C = [(Apple,Mango,Grapes)]
python中是否有任何预定义的函数可以获得上面的合并列表。
注意:已经使用的zip方法将结果返回为不同的结果
C = [(Apple,Mango),(Grapes)]
返回上述结果的代码片段是
A = [('Apple','Mango')]
B = ['Grapes']
C = zip(A,B)
print C
答案 0 :(得分:0)
如果A是元组列表而B是正常列表,则可以使用
A = [('Apple', 'Mango')]
B = ['Grapes']
print [ tuple( sum ( map(list,A), [] ) + B) ]
答案 1 :(得分:0)
对于你的例子,你可以做
C = list(A[0] + (B[0],))
答案 2 :(得分:0)
如果A和B是元组列表,那么您可以使用以下递归函数
输入类似
的内容A = [('Apple', 'Mango'), ('Mango1')]
B = [('Grapes', 'Banana'), ('Apple1')]
递归功能
def recursive_fun(c, temp_list):
for i in c:
if type(i) is tuple:
recursive_fun(list(i), temp_list)
else :
temp_list.append(i)
return temp_list
<强>输出强>
[tuple(recursive_fun(A, [])+ recursive_fun(B, []))]
最终输出
[('Apple', 'Mango', 'Mango1', 'Grapes', 'Banana', 'Apple1')]
答案 3 :(得分:0)
这是一种在class MyClass(object):
QUERIES_AGGS = {
'query3': {
"query": MyClass._make_basic_query,
'aggregations': MyClass._make_query_three_aggregations,
'aggregation_transformations': MyClass._make_query_three_transformations
}
}
@staticmethod
def _make_basic_query():
#some code here
@staticmethod
def _make_query_three_aggregations():
#some code here
@staticmethod
def _make_query_three_transformations(aggs):
#some code here
之后展平元组的方法,它可能在时间复杂度方面表现较差,但即使对于混合类型列表,它也会得到你想要的,如zip
和{{1 }}
[str, tuple]
答案 4 :(得分:0)
由于元组不可变,我们无法追加/添加A[0]
。让我们解压缩并在列表中创建一个新元组:
[(*A[0], *B)]