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.
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.
# 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)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
Dowiedz się, jak zapętlać lub iterować po słowniku Pythona. Odkryj metody pętli po kluczach, wartościach i parach klucz-wartość za pomocą przejrzystych, możliwych do uruchomienia przykładów.
Jak dodawać i aktualizować klucze w słowniku PythonaDowiedz się, jak dodawać elementy lub aktualizować pary klucz-wartość w słowniku języka Python. Poznaj nawiasy kwadratowe, metodę aktualizacji i opcje operatora scalania.
Polecane zasoby Pythona
Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.
Wyjaśnienie zmiennych i typów danych w Pythonie
Zrozumienie zmiennych Pythona i podstawowych typów danych (łańcuchy, liczby całkowite, zmiennoprzecinkowe, wartości logiczne). Kompletny przewodnik dla początkujących dotyczący przydzielania pamięci w Pythonie.
Ściągawka dotycząca metod słownika Pythona
Poznaj metody słownikowe Pythona. Kompletny przewodnik dotyczący wstawiania, pobierania, aktualizacji i sprawdzania par klucz-wartość.
Python kontra JavaScript: który język programowania jest najlepszy?
Kompleksowe porównanie Pythona i JavaScript. Poznaj różnice w składni, wydajność, przypadki użycia (backend vs frontend) i przykłady kodowania.