Metoda nr 1: Używanie listy tłumaczeń + sum()
Ten konkretny problem można rozwiązać, używając listy ze zrozumieniem w połączeniu z funkcja sum, w której używamy funkcji sum, aby znaleźć sumę listy jako atrybut krotki, oraz list składany do iteracji po liście.
# Kod demonstracyjny Python3 # Sumowanie listy jako atrybut krotki # używanie listy ze zrozumieniem + suma () # inicjowanie listy test_list = [( ’ key1’ , [ 3 , 4 , 5 ]), ( ’key2’ , [ 1 , 4 , 2 ]), ( ’ key3’ , [ 9 , 3 ])] # wydrukuj oryginalną listę print ( "Oryginalna lista:" + str (test_list)) # using lista ze zrozumieniem + suma () # Sumowanie listy jako atrybut krotki res = [(klucz, suma (lst)) for klucz, lst in test_list] # wynik drukowania print ( " Podsumowanie atrybutów krotki listy to: " + str (res)) |
Dane wyjściowe:
Oryginalna lista: [(’klucz1’, [3, 4, 5]), (’ klucz2 ’, [1, 4, 2]), (’ klucz3 ’, [9, 3 ])]
Podsumowanie atrybutów krotki listy to: [(’ klucz1 ’, 12), (’ klucz2 ’, 7 ), (’ klucz3’, 12)]
Metoda nr 2: Użyj za pomocą map + lambda + sum()
Powyższy problem można również rozwiązać za pomocą funkcji map, aby rozszerzyć logikę na całość lista, a funkcja sum może wykonać podobną technikę zadania.
# Kod Python3 do demonstracji # Sumowanie listy jako atrybut krotki # za pomocą mapy () + lambda + sum () # inicjalizacja listy test_list = [( ’key1’ , [ 3 , 4 , 5 ]), ( ’key2’ , [ 1 , 4 , 2 ]), ( ’key3’ , [ 9 , 3 ])] # wydrukuj oryginalną listę print ( "Oryginalna lista:" + str (test_list)) # za pomocą map () + lambda + sum () # Sumowanie listy jako atrybut krotki res = lista ( map ( lambda x: (x [ 0 ], sum (x [ 1 ])), test_list)) # wynik wydruku print ( "Podsumowanie atrybutu krotki listy to:" + str (res)) |
Dane wyjściowe:
Oryginalna lista: [(’key1’, [3, 4, 5 ]), (’klucz2’, [1, 4, 2]), (’klucz3’, [9, 3])]
Podsumowanie atrybutów krotki listy to: [(’klucz1’, 12), ( ’key2’, 7), (’key3’, 12)]