Dictionaries

0
14كيلو بايت

Dictionaries are another fundamental data structure in Python used for storing collections of items. Unlike lists which use numerical indexes for access, dictionaries use key-value pairs. This makes them ideal for situations where you need to associate data with names or unique identifiers.

Here's a breakdown of dictionaries in Python:

1. Creating Dictionaries:

  • Dictionaries are created using curly braces {} with key-value pairs separated by colons ::

Python
# Simple dictionary
person = {"name": "Alice", "age": 30, "city": "New York"}

# Dictionary with mixed data types
data = {1: "One", 2.5: "Two point five", True: "Boolean value"}

  • Keys must be immutable (like strings, numbers, or tuples). Values can be of any data type.

2. Accessing Elements:

  • You can access elements using their keys within square brackets:

Python
name = person["name"]  # name will be "Alice"

  • Trying to access a non-existent key will result in a KeyError. You can use the get() method to handle missing keys gracefully:

Python
occupation = person.get("occupation", "Unemployed")  # Returns "Unemployed" if "occupation" key is missing

3. Modifying Dictionaries:

  • Dictionaries are mutable, you can change their contents after creation.
  • Assign a new value to an existing key to modify it:

Python
person["age"] = 31  # Updates the age of the person

  • Add new key-value pairs using the assignment operator:

Python
person["occupation"] = "Software Engineer"

  • Remove key-value pairs using the del keyword:

Python
del person["city"]  # Removes the "city" key-value pair

4. Common Dictionary Methods:

  • keys(): Returns a view of all keys in the dictionary.
  • values(): Returns a view of all values in the dictionary.
  • items(): Returns a view of all key-value pairs as tuples.
  • in: Checks if a specific key exists in the dictionary.

5. Looping through Dictionaries:

  • You can iterate over the keys or key-value pairs of a dictionary:

Python
# Looping through keys
for key in person:
  print(key, person[key])

# Looping through key-value pairs
for key, value in person.items():
  print(f"{key}: {value}")

Advantages of Dictionaries:

  • Fast lookups: Accessing elements by key is very efficient (average time complexity of O(1)).
  • Flexible keys: Keys can be any immutable data type, allowing for meaningful names or identifiers.
  • Unordered: The order of elements in a dictionary is not guaranteed, which is sometimes desirable.

When to Use Dictionaries:

  • When you need to associate data with unique labels or identifiers.
  • When the order of elements is not important.
  • For representing real-world entities with attributes (like person, product, etc.).

I hope this explanation clarifies dictionaries in Python. Feel free to ask if you'd like to explore specific examples or use cases for dictionaries!

البحث
الأقسام
إقرأ المزيد
التعليم
THE MOUNTAINS IN EAST AFRICA AND THEIR SIZES
Here are some of the prominent mountains in East Africa along with their sizes: Mount...
بواسطة Mpatswe Francis 2024-10-09 00:08:00 0 11كيلو بايت
Computer Programming
Nested Lists, List Slicing, and Modifying Lists
Here's a breakdown of nested lists, list slicing, and modifying lists in Python: 1. Nested...
بواسطة Python for Everybody - Full University Python Course Code 2024-07-17 15:04:29 0 14كيلو بايت
Computer Programming
Element-specific attributes (alt for images, href for links)
While global attributes can be applied to any HTML element, some attributes are specific to...
بواسطة HTML PROGRAMMING LANGUAGE 2024-08-15 01:47:04 0 9كيلو بايت
Computer Programming
While Loop and For Loop
In Python, while and for loops are fundamental constructs for repeated execution of code blocks....
بواسطة Python for Everybody - Full University Python Course Code 2024-07-16 21:50:42 0 10كيلو بايت
Computer Programming
Floating-Point Numbers and Arithmetic Expressions
Floating-point numbers A floating-point number is a number with a decimal. Ex: 3.14,...
بواسطة Python for Everybody - Full University Python Course Code 2024-07-16 21:14:58 0 10كيلو بايت