Słownik Pythona | Metoda fromkeys ()

| |

Czasami konieczne jest utworzenie słownika z podanych kluczy. Robienie tego z grubsza zajęłoby trochę czasu i byłoby bardziej żmudną pracą. Stąd fromkeys() pomaga nam łatwo rozwiązać ten problem przy użyciu tylko jednej metody. W tym artykule wyjaśniono operacyjne i inne aspekty związane z tą funkcją.

Składnia: fromkeys (seq, val)

Parametry:
seq: Sekwencja do przekształcenia w słownik.
val: Początkowe wartości, które należy przypisać do wygenerowanych kluczy ... Domyślnie Brak.

Zwraca: Słownik z kluczami zmapowanymi na Brak, jeśli nie podano wartości, w przeciwnym razie na wartość podaną w polu.

Kod nr 1: Demonstracja z klawiszy od ()

# Kod demonstracyjny Pythona 3
# praca z klawiszami ()


# sekwencja inicjująca

seq = { ’a’ , ’ b’ , ’c’ , ’ d’ , ’e’ }


# używając fromkeys() do konwersji sekwencji na dict
# zainicjuj przy użyciu Brak

res_dict = dict . fromkeys (seq)


# Utworzono dykt wydruku

print ( "Nowo utworzony dict z wartościami Brak:" + str (res_dict ))


# używanie fromkeys () do konwersji sekwencji na dict
# inicjowanie z 1

res_dict 2 = dict . Fromkeys (seq, 1 )


# Drukuj dykt utworzony

print ( "Nowo utworzony dict z 1 jako wartością:" + str (res_dict2))

Wyjście:

Nowo utworzony dykt z wartościami Brak: {’d’: Brak, ’a’: Brak, ’b’: Brak, ’c’: Brak, ’e’: Brak }
Nowo utworzony dict z 1 jako wartością: {’ d ’: 1,’ a ’: 1,’ b ’: 1,’ c ’: 1,’ e ’: 1}

< /blockquote>

Zachowanie fromdict() z obiektami mutowalnymi jako wartościami:

Funkcja fromdict() może być również dostarczona z obiektem multilatable jako wartościami domyślnymi. Ale w tym przypadku głęboka kopia jest tworzona ze słownika, to znaczy, jeśli dodamy wartość do oryginalnej listy, dodanie nastąpi we wszystkich kluczowych wartościach.

Zapobieganie: Do tworzenia nowej listy jako wartości klucza, która nie wskazuje oryginalnej listy jako wartości klucza, można użyć pewnych technik rozumienia słownika.

Kod nr 2: Zademonstruj zachowanie z modyfikowalnymi obiektami.

< td class = "code">

# kod demonstracyjny Pythona 3
# zachowanie ze zmiennymi obiektami


# inicjalizacja sekwencji i listy

seq = { ’a’ , ’ b’ , ’c’ , ’d’ , ’ e’ }

lis1 = [ 2 , 3 ]


# używanie klawiszy from() do konwersji sekwencji na dict
# przy użyciu normalnej metody

res_dict = dict . fromkeys (seq, lis1)


# Drukuj utworzony dict

print ( "Nowo utworzony dict z wartościami listy:"

+ str (res_dict))

< br /> # dodaj do lis1

lis1.append ( 4 )


# Wydrukuj dyktat po dodaniu
# Pamiętaj, że dodawanie występuje we wszystkich wartościach

print ( " Dykta z listą wartości po dołączeniu: "

+ str (res_dict) )

lis1 = [ 2 , 3 ]

print ( ’’ )


# używając fromkeys () do konwersji sekwencji na dict
# używając dict. zrozumienie

res_dict2 = {key: list (lis1) for klucz w seq}


# Drukuj utworzony dict

print ( " Nowo utworzony słownik z wartościami listy: "

+ str (res_dict2))


# dodaj do lis1

lis1.append ( 4 )

# Drukuj dyktat po dodaniu
# Pamiętaj, że dodawanie nie jest teraz wykonywane.

print ( " Dykta z listą wartości po dołączeniu (bez zmian): "

+ str (res_dict2))

Dane wyjściowe:

Nowo utworzony dict z wartościami listy: {’d’: [2, 3], ’e’: [2, 3], ’c’: [2, 3] , ’a’: [2, 3], ’b’: [2, 3]}
Dykta z listą wartości po dodaniu: {’d’: [2, 3, 4], ’e’: [2, 3, 4], ’c’: [2, 3, 4], ’a’: [2, 3, 4], ’b’: [2, 3, 4] }

Nowo utworzony dict z wartościami listy: {’d’: [2, 3], ’e’: [2, 3], ’c’: [2, 3], ’a’ : [2, 3], ’b’: [2, 3]}
Dykta z listą wartości po dołączeniu (bez zmian): {’d’: [2, 3], ’e’: [2, 3], ’c’ : [2, 3], ’a’: [2, 3], ’b’: [2, 3]}

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method