Cách tạo python từ điển lồng nhau trống

Trong hướng dẫn này, bạn sẽ tìm hiểu về từ điển lồng nhau trong Python – từ điển là giá trị của từ điển khác. Bạn sẽ học cách tạo từ điển lồng nhau, truy cập các thành phần của chúng, sửa đổi chúng và hơn thế nữa. Bạn cũng sẽ học cách làm việc với các từ điển lồng nhau để chuyển đổi chúng thành Khung dữ liệu Pandas

Đến cuối hướng dẫn này, bạn sẽ học được

  • Từ điển lồng nhau trong Python là gì
  • Cách tạo từ điển lồng nhau trong Python
  • Cách truy cập, sửa đổi và xóa các thành phần trong từ điển lồng nhau
  • Cách chuyển đổi từ điển lồng nhau sang Pandas DataFrames

Mục lục

Từ điển lồng nhau của Python

Từ điển Python là cấu trúc dữ liệu vùng chứa chứa

# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
1 cặp thông tin. Chúng được tạo bằng cách sử dụng dấu ngoặc nhọn
# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
2, trong đó một giá trị có thể được tra cứu bằng cách truy cập khóa duy nhất của nó. Hãy xem một ví dụ từ điển đơn giản

# A Simple Python Dictionary
user = {
    'Name': 'Nik', 
    'Profession':'datagy'
    }

Trong từ điển trên, chúng ta có một mục gọi là

# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
3. Chúng ta có thể truy cập các giá trị của nó bằng cách tham khảo các khóa của từ điển. Giả sử chúng ta muốn truy cập giá trị của từ điển cho khóa
# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
4, chúng ta có thể viết

# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik

Một điều thú vị về từ điển Python là chúng ta thậm chí có thể sử dụng các từ điển khác làm giá trị của chúng. Điều này đưa chúng ta đến chủ đề chính của bài viết này

Giả sử chúng tôi muốn có một từ điển chứa thông tin người dùng dựa trên ID người dùng của ai đó. Hãy tạo một từ điển lưu trữ thông tin về nhiều người dùng, được chia nhỏ theo ID

# Understanding Nested Dictionaries
users = {
    1: {
        'Name': 'Nik', 
        'Profession':'datagy'
        }, 
    2: {
        'Name': 'Kate',
        'Profession': 'Government'
    }    
}

Trong ví dụ này, từ điển trước đây của chúng tôi đã được nhúng vào từ điển mới, lớn hơn. Những gì chúng tôi đã làm là tạo một từ điển mới, lồng nhau. Trong phần sau, chúng tôi tìm hiểu cách tạo từ điển lồng nhau

Tạo từ điển lồng nhau trong Python

Trong phần này, bạn sẽ học cách tạo từ điển lồng nhau. Từ điển lồng nhau là từ điển có một từ điển khác là một hoặc nhiều giá trị của chúng. Hãy xem cách chúng ta có thể tạo từ điển lồng nhau trong Python

Hãy xem xét một ví dụ

# Creating a Nested Dictionary in Python
users = {}
Nik = {
        'Name': 'Nik', 
        'Profession':'datagy'
    }

Kate = {
        'Name': 'Kate',
        'Profession': 'Government'
}

users[1] = Nik
users[2] = Kate

print[users]

# Returns: {1: {'Name': 'Nik', 'Profession': 'datagy'}, 2: {'Name': 'Kate', 'Profession': 'Government'}}

Hãy phá vỡ những gì chúng tôi đã làm ở đây

  1. Chúng tôi đã khởi tạo một từ điển trống,
    # Accessing a Dictionary Value
    print[user.get['Name']].   # Same as user['Name']
    
    # Returns: Nik
    5
  2. Chúng tôi đã tạo thêm hai từ điển,
    # Accessing a Dictionary Value
    print[user.get['Name']].   # Same as user['Name']
    
    # Returns: Nik
    6 và
    # Accessing a Dictionary Value
    print[user.get['Name']].   # Same as user['Name']
    
    # Returns: Nik
    7
  3. Sau đó, chúng tôi đã gán các từ điển này làm giá trị của các khóa tương ứng,
    # Accessing a Dictionary Value
    print[user.get['Name']].   # Same as user['Name']
    
    # Returns: Nik
    8 và
    # Accessing a Dictionary Value
    print[user.get['Name']].   # Same as user['Name']
    
    # Returns: Nik
    9, trong từ điển
    # Accessing a Dictionary Value
    print[user.get['Name']].   # Same as user['Name']
    
    # Returns: Nik
    5

Truy cập các mục trong Từ điển lồng nhau bằng Python

Trong phần này, bạn sẽ học cách truy cập các mục trong từ điển Python lồng nhau. Trong phần trước, chúng ta đã khám phá cách sử dụng phương pháp

# Understanding Nested Dictionaries
users = {
    1: {
        'Name': 'Nik', 
        'Profession':'datagy'
        }, 
    2: {
        'Name': 'Kate',
        'Profession': 'Government'
    }    
}
1 để truy cập các mục. Hãy xem điều gì sẽ xảy ra khi chúng ta cố gắng truy cập một mục trong từ điển lồng nhau

# Accessing an Item in a Nested Dictionary
users = {
    1: {'Name': 'Nik', 'Profession': 'datagy'}, 
    2: {'Name': 'Kate', 'Profession': 'Government'}
    }

print[users.get[1]]

# Returns: {'Name': 'Nik', 'Profession': 'datagy'}

Chúng ta có thể thấy rằng điều này đã trả về một từ điển. Vì một từ điển đã được trả lại, chúng tôi có thể truy cập một mục trong từ điển được trả lại

Giả sử chúng tôi muốn truy cập

# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
4 của người dùng
# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
8, chúng tôi có thể viết như sau

# Accessing Nested Items in Python Dictionaries
users = {
    1: {'Name': 'Nik', 'Profession': 'datagy'}, 
    2: {'Name': 'Kate', 'Profession': 'Government'}
    }

print[users.get[1].get['Name']]

# Returns: Nik 

Chúng ta có thể gọi phương thức

# Understanding Nested Dictionaries
users = {
    1: {
        'Name': 'Nik', 
        'Profession':'datagy'
        }, 
    2: {
        'Name': 'Kate',
        'Profession': 'Government'
    }    
}
1 nhiều lần vì chúng ta đang truy cập từ điển trong từ điển. Trong phần tiếp theo, bạn sẽ tìm hiểu cách sửa đổi các mục trong từ điển lồng nhau

Sửa đổi các mục trong Từ điển lồng nhau bằng Python

Trong phần này, bạn sẽ học cách sửa đổi các mục trong từ điển lồng nhau. Để sửa đổi các mục, chúng tôi sử dụng quy trình tương tự như khi đặt một mục mới trong từ điển. Trong trường hợp này, chúng ta chỉ cần điều hướng xuống xa hơn một chút, đến khóa của một từ điển lồng nhau

Giả sử chúng tôi muốn thay đổi nghề nghiệp của người dùng 2 thành

# Understanding Nested Dictionaries
users = {
    1: {
        'Name': 'Nik', 
        'Profession':'datagy'
        }, 
    2: {
        'Name': 'Kate',
        'Profession': 'Government'
    }    
}
5. Sau đó chúng ta có thể viết

# Modifying Items in a Nested Dictionary
users = {
    1: {'Name': 'Nik', 'Profession': 'datagy'}, 
    2: {'Name': 'Kate', 'Profession': 'Government'}
    }

users[2]['Profession'] = 'Habitat for Humanity'
print[users]

# Returns: 
# {1: {'Name': 'Nik', 'Profession': 'datagy'}, 2: {'Name': 'Kate', 'Profession': 'Habitat for Humanity'}}

Trong trường hợp này, chúng tôi có thể truy cập giá trị của khóa thông qua chuyển nhượng trực tiếp. Nếu khóa đó không tồn tại trước đó, thì khóa [và giá trị] sẽ được tạo

Xóa các mục trong từ điển lồng nhau bằng Python

Từ điển Python sử dụng từ khóa

# Understanding Nested Dictionaries
users = {
    1: {
        'Name': 'Nik', 
        'Profession':'datagy'
        }, 
    2: {
        'Name': 'Kate',
        'Profession': 'Government'
    }    
}
6 để xóa cặp
# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
1 trong từ điển. Để làm điều này trong một từ điển lồng nhau, chúng ta chỉ cần đi sâu hơn vào từ điển. Hãy xem cách chúng ta có thể xóa khóa
# Understanding Nested Dictionaries
users = {
    1: {
        'Name': 'Nik', 
        'Profession':'datagy'
        }, 
    2: {
        'Name': 'Kate',
        'Profession': 'Government'
    }    
}
8 khỏi từ điển
# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
8

# Deleting an item from a nested dictionary
users = {
    1: {'Name': 'Nik', 'Profession': 'datagy'}, 
    2: {'Name': 'Kate', 'Profession': 'Government'}
    }

del users[1]['Profession']

print[users]

# Returns: 
# {1: {'Name': 'Nik'}, 2: {'Name': 'Kate', 'Profession': 'Government'}}

Tương tự, chúng ta có thể xóa toàn bộ từ điển lồng nhau bằng cùng một phương pháp. Bởi vì từ điển lồng nhau thực sự chỉ là một cặp

# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
1 trong từ điển rộng hơn của chúng ta, phương pháp tương tự cũng được áp dụng. Hãy xóa toàn bộ từ điển đầu tiên
# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
8

# Deleting an entire nested dictionary
users = {
    1: {'Name': 'Nik', 'Profession': 'datagy'}, 
    2: {'Name': 'Kate', 'Profession': 'Government'}
    }

del users[1]

print[users]

# Returns: 
# {2: {'Name': 'Kate', 'Profession': 'Government'}}

Trong phần tiếp theo, bạn sẽ tìm hiểu cách lặp qua các từ điển lồng nhau trong Python

Lặp lại thông qua các từ điển lồng nhau trong Python

Trong phần này, bạn sẽ học cách lặp qua các từ điển lồng nhau. Điều này có thể hữu ích khi bạn muốn in ra các giá trị trong từ điển. Chúng ta có thể xây dựng một hàm đệ quy để xử lý việc này. Hãy xem nó trông như thế nào

# Iterating through nested dictionaries recursively
users = {
    1: {'Name': 'Nik', 'Profession': 'datagy'}, 
    2: {'Name': 'Kate', 'Profession': 'Government'}
    }

def iterate_dict[dict_to_iterate]:
    for key, value in dict_to_iterate.items[]:
        if type[value] == dict:
            print[key]
            iterate_dict[value]
        else:
            print[key + ":" + value]

iterate_dict[users]

# Returns:
# 1
# Name:Nik
# Profession:datagy
# 2
# Name:Kate
# Profession:Government

Chuyển đổi từ điển Python lồng nhau thành Pandas DataFrame

Trong phần cuối cùng này, bạn sẽ tìm hiểu cách chuyển đổi từ điển lồng nhau sang Khung dữ liệu Pandas. Chúng ta có thể chỉ cần chuyển từ điển lồng nhau vào hàm tạo

# Creating a Nested Dictionary in Python
users = {}
Nik = {
        'Name': 'Nik', 
        'Profession':'datagy'
    }

Kate = {
        'Name': 'Kate',
        'Profession': 'Government'
}

users[1] = Nik
users[2] = Kate

print[users]

# Returns: {1: {'Name': 'Nik', 'Profession': 'datagy'}, 2: {'Name': 'Kate', 'Profession': 'Government'}}
2. Tuy nhiên, Pandas sẽ đọc DataFrame bằng các khóa dưới dạng chỉ mục

Để giải quyết vấn đề này, chúng ta có thể chuyển đổi DataFrame bằng phương pháp

# Creating a Nested Dictionary in Python
users = {}
Nik = {
        'Name': 'Nik', 
        'Profession':'datagy'
    }

Kate = {
        'Name': 'Kate',
        'Profession': 'Government'
}

users[1] = Nik
users[2] = Kate

print[users]

# Returns: {1: {'Name': 'Nik', 'Profession': 'datagy'}, 2: {'Name': 'Kate', 'Profession': 'Government'}}
3

# Accessing a Dictionary Value
print[user.get['Name']].   # Same as user['Name']

# Returns: Nik
0

Phần kết luận

Trong hướng dẫn này, bạn đã học về từ điển lồng nhau trong Python. Bạn đã biết từ điển lồng nhau là gì. Sau đó, bạn đã học cách truy cập, sửa đổi và xóa các mục của họ. Cuối cùng, bạn đã học cách lặp qua các từ điển lồng nhau cũng như cách đọc chúng trong Pandas DataFrames

Làm cách nào để tạo một từ điển trống trong Python?

Cách tạo Từ điển rỗng trong Python. Để tạo một từ điển trống, trước tiên hãy tạo một tên biến sẽ là tên của từ điển. Sau đó, gán biến cho một tập hợp trống các dấu ngoặc nhọn, {}. Một cách khác để tạo từ điển rỗng là sử dụng hàm dict[] mà không truyền bất kỳ đối số nào.

Làm cách nào để làm trống từ điển trong Python?

Phương thức clear[] xóa tất cả các phần tử khỏi từ điển.

Chúng ta có thể tạo từ điển lồng nhau trong Python không?

Trong Python, Từ điển lồng nhau có thể được tạo bằng cách đặt các từ điển được phân tách bằng dấu phẩy nằm trong dấu ngoặc nhọn .

Cách xóa khóa

Các cặp khóa-giá trị trong các từ điển lồng nhau của Python có thể bị xóa bằng phương thức del[] . Phương pháp này có thể được sử dụng để xóa toàn bộ từ điển hoặc một cặp khóa-giá trị cụ thể khỏi từ điển lồng nhau.

Chủ Đề