Jak utworzyć słownik w Pythonie (literały i konstruktory)

Dowiedz się, jak utworzyć słownik w Pythonie. Zrozumienie składni dosłownej, konstruktora dyktowania, rozumienia dyktowania i inicjatorów wartości kluczy.

Wypróbuj to rozwiązanie w Edytorze

Przegląd

Słowniki są jednymi z najpotężniejszych i najczęściej wykorzystywanych wbudowanych typów danych w Pythonie. Słownik to zmienny, uporządkowany (odPython 3.7) zbiór par klucz-wartość, gdzie każdy klucz musi być unikalny i umożliwiać mieszanie (np. ciągi znaków, liczby lub krotki). Słowniki umożliwiają wykonywanie operacji wyszukiwania z wysoce zoptymalizowaną złożonością czasu średniego przypadku O(1).

Najpopularniejszym i bezpośrednim sposobem tworzenia słownika jest użycie nawiasów klamrowych `{}` z parami klucz-wartość oddzielonymi dwukropkami. Na przykład `my_dict = {"name": "Alice", "age": 30}` tworzy zapełniony słownik. Aby utworzyć pusty słownik, możesz użyć pustych nawiasów klamrowych `{}` lub konstruktora `dict()`.

Python oferuje także inne zaawansowane metody dynamicznego tworzenia słowników. Konstruktor `dict()` może budować słowniki na podstawie list krotek klucz-wartość lub argumentów słów kluczowych. Ponadto tłumaczenia słownikowe zapewniają skuteczny sposób inicjowania słownika na podstawie istniejącej iteracji poprzez zastosowanie transformacji do kluczy lub wartości w tekście.

Dane wyjściowe kodu i wykonania

Ten skrypt demonstruje wiele sposobów inicjowania i tworzenia słowników w Pythonie.

create_dict.py
Spróbuj w Edytorze
# 1. Dictionary literal syntax (most common)
user = {"name": "Alice", "age": 28, "verified": True}
print("Literal dict:", user)

# 2. Using the dict() constructor with keyword arguments
config = dict(host="localhost", port=8080, debug=True)
print("Constructor dict:", config)

# 3. Creating dictionary from key-value pairs (tuples)
pairs = [("id", 101), ("status", "active")]
status_dict = dict(pairs)
print("From tuples:", status_dict)

# 4. Dictionary comprehension (dynamic creation)
squares = {x: x**2 for x in range(1, 5)}
print("Comprehension:", squares)
Wyjście terminala
Literal dict: {'name': 'Alice', 'age': 28, 'verified': True}
Constructor dict: {'host': 'localhost', 'port': 8080, 'debug': True}
From tuples: {'id': 101, 'status': 'active'}
Comprehension: {1: 1, 2: 4, 3: 9, 4: 16}

Wdrażanie krok po kroku

  • Użyj nawiasów klamrowych {} z parami klucz:wartość, aby utworzyć literał słownikowy.
  • Wywołaj funkcję dict(), aby utworzyć pusty słownik lub skonstruuj go przy użyciu argumentów słów kluczowych.
  • Przekaż listę krotek klucz-wartość do funkcji dict(), aby przekształcić tablice relacyjne w obiekt słownika.

Często zadawane pytania

Czy elementy listy lub słownika mogą służyć jako klucze słownika?

Nie, klucze słownika muszą mieć możliwość mieszania (niezmienne). Ponieważ listy i słowniki są modyfikowalne, nie mogą być kluczami. Krotki, ciągi znaków i liczby całkowite są prawidłowymi kluczami.

Jak mogę utworzyć słownik z domyślnymi wartościami zestawu kluczy?

Możesz użyć dict.fromkeys(keys_list, default_value) do skonstruowania słownika, w którym wszystkie klucze mają tę samą wartość domyślną.

Powiązane tematy

Polecane zasoby Pythona

Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.