Dicționare

Introducere în Python pentru dezvoltatori

Jasmin Ludolf

Senior Data Science Content Developer

Lista de ingrediente

ingredients = ["pasta", "tomatoes", "garlic", "basil", "olive oil", "salt"]

# Ingredient quantities (in grams) quantities = [500, 400, 15, 20, 30, 5]
Introducere în Python pentru dezvoltatori

Dicționar

  • Dicționar = perechi cheie-valoare

Dicționar adnotat cu cuvântul (cheie) și definiția (valoare)

1 https://unsplash.com/@sandym10
Introducere în Python pentru dezvoltatori

De ce să folosim dicționare?

  • username
  • email
  • preferences

 

  • ip_address
  • location

$$

  • Scaler rețete: asocierea ingredientelor cu cantitățile

Informații utilizator

Rețea de calculatoare

1 User image by Bilobaba Vladimir, Aviavlad; https://unsplash.com/@jjying
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = 
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta"
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta":
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta": 500
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta": 500,
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta": 500,
          "tomatoes": 400,
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta": 500,
          "tomatoes": 400, 
          "garlic": 15,
          "basil": 20, 
          "olive oil": 30,
          "salt": 5
Introducere în Python pentru dezvoltatori

Crearea unui dicționar

# Creating a dictionary
recipe = {"pasta": 500,
          "tomatoes": 400, 
          "garlic": 15,
          "basil": 20, 
          "olive oil": 30,
          "salt": 5}
Introducere în Python pentru dezvoltatori

Accesarea unei valori după cheie

  • Dicționarele sunt ordonate

    • Valorile pot fi accesate prin indexare după cheie
  • De câtă pastă avem nevoie?

# Find the ingredient's quantity
print(recipe["pasta"])
500
Introducere în Python pentru dezvoltatori

Accesarea tuturor valorilor

# Get all values from a dictionary
print(recipe.values())
dict_values([500, 400, 15, 20, 30, 5])
Introducere în Python pentru dezvoltatori

Accesarea tuturor cheilor

# Retrieve all keys in a dictionary
print(recipe.keys())
dict_keys(['pasta', 'tomatoes', 'garlic', 'basil', 'olive oil', 'salt'])
Introducere în Python pentru dezvoltatori

Vizualizarea unui dicționar complet

# Print the dictionary
print(recipe)
{'pasta': 500, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5}
# Get all items (key-value pairs)
print(recipe.items())
dict_items([('pasta', 500), ('tomatoes', 400), ('garlic', 15), ('basil', 20), 
('olive oil', 30), ('salt', 5)])
Introducere în Python pentru dezvoltatori

Adăugarea unei perechi cheie-valoare

# Add a new key-value pair
recipe["parmesan"] = 50
print(recipe)
{'pasta': 500, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5, 'parmesan': 50}
Introducere în Python pentru dezvoltatori

Actualizarea unei valori

print(recipe)
{'pasta': 500, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5, 'parmesan': 50}
# Updating a value associated with an existing key
recipe["pasta"] = 1000
print(recipe)
{'pasta': 1000, 'tomatoes': 400, 'garlic': 15, 'basil': 20, 'olive oil': 30,
'salt': 5, 'parmesan': 50}
Introducere în Python pentru dezvoltatori

Chei duplicate

# Creating a dictionary with a duplicate key
recipe = {"pasta": 500, "garlic": 5, 
          "garlic": 15, "basil": 20, 
          "olive oil": 30, "salt": 5}

# Print the duplicate key's value print(recipe["garlic"])
15
Introducere în Python pentru dezvoltatori

Să exersăm!

Introducere în Python pentru dezvoltatori

Preparing Video For Download...