Dada una lista de tuplas, la tarea es imprimir otra lista que contenga la tupla del mismo primer elemento. A continuación se presentan algunas formas de lograr las tareas anteriores.
Ejemplo:
Input : [('x', 'y'), ('x', 'z'), ('w', 't')] Output: [('w', 't'), ('x', 'y', 'z')]
Método #1: Usarextend
# Python code to find common # first element in list of tuple # Function to solve the task def find(Input): out = {} for elem in Input: try: out[elem[0]].extend(elem[1:]) except KeyError: out[elem[0]] = list(elem) return [tuple(values) for values in out.values()] # List initialization Input = [('x', 'y'), ('x', 'z'), ('w', 't')] # Calling function Output = (find(Input)) # Printing print("Initial list of tuple is :", Input) print("List showing common first element", Output)
Producción:
Initial list of tuple is : [('x', 'y'), ('x', 'z'), ('w', 't')] List showing common first element [('w', 't'), ('x', 'y', 'z')]
Método #2: Usardefaultdict
# Python code to find common first # element in list of tuple # Importing from collections import defaultdict # Function to solve the task def find(pairs): mapp = defaultdict(list) for x, y in pairs: mapp[x].append(y) return [(x, *y) for x, y in mapp.items()] # Input list initialization Input = [('p', 'q'), ('p', 'r'), ('p', 's'), ('m', 't')] # calling function Output = find(Input) # Printing print("Initial list of tuple is :", Input) print("List showing common first element", Output)
Producción:
Initial list of tuple is : [('p', 'q'), ('p', 'r'), ('p', 's'), ('m', 't')] List showing common first element [('m', 't'), ('p', 'q', 'r', 's')]
Publicación traducida automáticamente
Artículo escrito por everythingispossible y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA