Hướng dẫn how do i create multiple dictionaries in python? - làm cách nào để tạo nhiều từ điển trong python?

Bài viết này giải thích cách thêm một mục mới vào từ điển

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
6 hoặc cập nhật giá trị của một mục hiện có trong Python. Cũng có thể hợp nhất nhiều từ điển.

Show
  • Thêm/cập nhật một mục vào/trong từ điển bằng cách chỉ định khóa
  • Hợp nhất nhiều từ điển:
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    
    d1.update(d2)
    print(d1)
    # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
    
    7,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    
    d1.update(d2)
    print(d1)
    # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
    
    8,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    
    d1.update(d2)
    print(d1)
    # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
    
    9,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    d3 = {'k5': 5, 'k6': 6}
    
    # d1.update(d2, d3)
    # TypeError: update expected at most 1 arguments, got 2
    
    0,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    d3 = {'k5': 5, 'k6': 6}
    
    # d1.update(d2, d3)
    # TypeError: update expected at most 1 arguments, got 2
    
    1
  • Thêm/Cập nhật nhiều mục vào/trong Từ điển:
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    
    d1.update(d2)
    print(d1)
    # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
    
    7,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    d3 = {'k5': 5, 'k6': 6}
    
    # d1.update(d2, d3)
    # TypeError: update expected at most 1 arguments, got 2
    
    1

Xem các bài viết sau về cách xóa một mục khỏi từ điển, kiểm tra sự tồn tại của một khóa và thay đổi khóa.

  • Xóa một mục khỏi từ điển trong Python (Clear, Pop, Popitem, Del)
  • Kiểm tra xem khóa/giá trị có tồn tại trong từ điển trong Python không
  • Thay đổi khóa từ điển trong Python

Thêm/cập nhật một mục vào/trong từ điển bằng cách chỉ định khóa

Hợp nhất nhiều từ điển:

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7,
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
8,
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
9,
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
0,
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
1

Thêm/Cập nhật nhiều mục vào/trong Từ điển:

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7,
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
1

d = {'k1': 1, 'k2': 2}

d['k3'] = 3
print(d)
# {'k1': 1, 'k2': 2, 'k3': 3}

d['k1'] = 100
print(d)
# {'k1': 100, 'k2': 2, 'k3': 3}

Xem các bài viết sau về cách xóa một mục khỏi từ điển, kiểm tra sự tồn tại của một khóa và thay đổi khóa.

  • Xóa một mục khỏi từ điển trong Python (Clear, Pop, Popitem, Del)

Kiểm tra xem khóa/giá trị có tồn tại trong từ điển trong Python không

d1 = {'k1': 1, 'k2': 2} d2 = {'k1': 100, 'k3': 3, 'k4': 4} d1.update(d2) print(d1) # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4} 7

Thay đổi khóa từ điển trong Python

  • Bạn có thể thêm một mục vào từ điển hoặc cập nhật giá trị của một mục hiện có như sau.

Nếu một khóa không tồn tại được chỉ định, một mục mới được thêm vào và nếu một khóa hiện có được chỉ định, giá trị của mục hiện tại được cập nhật (ghi đè).

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}

Nếu bạn không muốn cập nhật giá trị cho khóa hiện có, hãy sử dụng phương thức

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
4. Xem bài viết sau đây.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2

Chỉ thêm một mục khi khóa không tồn tại trong Dict in Python (setDefault ())

  • Hợp nhất nhiều từ điển:
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    
    d1.update(d2)
    print(d1)
    # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
    
    7,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    d3 = {'k5': 5, 'k6': 6}
    
    # d1.update(d2, d3)
    # TypeError: update expected at most 1 arguments, got 2
    
    0,
    d1 = {'k1': 1, 'k2': 2}
    d2 = {'k1': 100, 'k3': 3, 'k4': 4}
    d3 = {'k5': 5, 'k6': 6}
    
    # d1.update(d2, d3)
    # TypeError: update expected at most 1 arguments, got 2
    
    1

d1.update(**d2, **d3)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4, 'k5': 5, 'k6': 6}

Bằng cách chỉ định một

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
6 khác là đối số của phương thức
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7, tất cả các mục của nó được thêm vào.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d3.update(**d1, **d2)
# TypeError: dict.update() got multiple values for keyword argument 'k1'

Các loại tích hợp - Dict.Update () - Tài liệu Python 3.9.7

Nếu khóa trùng với một khóa hiện có, nó sẽ được ghi đè với giá trị

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
6 được chỉ định trong đối số.

Một lỗi được nêu ra nếu có nhiều hơn một từ điển được chỉ định là đối số của

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k3': 3, 'k4': 4}

print({**d1, **d2})
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}

print(dict(**d1, **d2))
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}

Như được mô tả sau,

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7 có thể thêm các mục mới với các đối số từ khóa (
d1.update(**d2, **d3)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4, 'k5': 5, 'k6': 6}
4), để bạn có thể giải nén và chuyển từng mục bằng
d1.update(**d2, **d3)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4, 'k5': 5, 'k6': 6}
5.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

print({**d1, **d2})
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}

# print(dict(**d1, **d2))
# TypeError: dict() got multiple values for keyword argument 'k1'

Giải nén và vượt qua danh sách

  • Trong trường hợp này, không sao, các khóa của từ điển gọi phương thức và các khóa của từ điển được chỉ định trong đối số được nhân đôi như trong ví dụ trên, nhưng một lỗi được nêu ra nếu các khóa của nhiều từ điển được chỉ định trong đối số được trùng lặp.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
8 (Python 3.5 trở lên),
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
9

Với d1 = {'k1': 1, 'k2': 2} d2 = {'k1': 100, 'k3': 3, 'k4': 4} d1.update(d2) print(d1) # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4} 7, từ điển ban đầu được cập nhật.

Nếu bạn muốn tạo một từ điển mới bằng cách hợp nhất nhiều từ điển, hãy sử dụng

d1.update(**d2, **d3)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4, 'k5': 5, 'k6': 6}
9 (từ Python 3.5) hoặc
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d3.update(**d1, **d2)
# TypeError: dict.update() got multiple values for keyword argument 'k1'
0.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d = d1 | d2
print(d)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}

d = d2 | d1
print(d)
# {'k1': 1, 'k3': 3, 'k4': 4, 'k2': 2}

Trong trường hợp

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d3.update(**d1, **d2)
# TypeError: dict.update() got multiple values for keyword argument 'k1'
0, một lỗi tăng lên nếu các khóa của nhiều từ điển được chỉ định là đối số được nhân đôi.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

d = d1 | d2 | d3
print(d)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4, 'k5': 5, 'k6': 6}

Xem các bài viết sau đây để biết chi tiết về cách tạo từ điển.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1 |= d2
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}

Thêm/Cập nhật nhiều mục vào/trong Từ điển: d1 = {'k1': 1, 'k2': 2} d2 = {'k1': 100, 'k3': 3, 'k4': 4} d1.update(d2) print(d1) # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4} 7, d1 = {'k1': 1, 'k2': 2} d2 = {'k1': 100, 'k3': 3, 'k4': 4} d3 = {'k5': 5, 'k6': 6} # d1.update(d2, d3) # TypeError: update expected at most 1 arguments, got 2 1

d1 = {'k1': 1, 'k2': 2} d2 = {'k1': 100, 'k3': 3, 'k4': 4} d1.update(d2) print(d1) # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4} 7

Tạo một từ điển trong Python ({}, dict (), Dictorsions)

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
0

Trong Python 3.9 trở lên, cũng có thể tạo một từ điển mới bằng toán tử

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
0 được mô tả tiếp theo.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
1

Toán tử

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
0, toán tử
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
1 (Python 3.9 trở lên)

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
2

Kể từ Python 3.9, có thể hợp nhất hai từ điển với toán tử

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
0. Nếu chúng có cùng một khóa, nó sẽ được ghi đè bởi giá trị bên phải.

  • Bạn có thể kết hợp nhiều từ điển.

Giống như

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d3.update(**d1, **d2)
# TypeError: dict.update() got multiple values for keyword argument 'k1'
6 cho
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d3.update(**d1, **d2)
# TypeError: dict.update() got multiple values for keyword argument 'k1'
7,
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
1 cho
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}
d3 = {'k5': 5, 'k6': 6}

# d1.update(d2, d3)
# TypeError: update expected at most 1 arguments, got 2
0 cũng được cung cấp. Như với
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7, đối tượng bên trái được cập nhật.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
3

Nếu đối số từ khóa d1.update(**d2, **d3) print(d1) # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4, 'k5': 5, 'k6': 6} 4 được chỉ định cho phương thức d1 = {'k1': 1, 'k2': 2} d2 = {'k1': 100, 'k3': 3, 'k4': 4} d1.update(d2) print(d1) # {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4} 7, mục có khóa và giá trị của nó được thêm vào. Nếu khóa chồng chéo với một cái hiện có, nó sẽ được ghi đè với giá trị được chỉ định là đối số.

Cũng có thể chỉ định danh sách

d1 = {'k1': 1, 'k2': 2}
d2 = {'k3': 3, 'k4': 4}

print({**d1, **d2})
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}

print(dict(**d1, **d2))
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}
6 là một đối số cho phương thức
d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
7. Nếu khóa chồng chéo với một cái hiện có, nó sẽ được ghi đè với giá trị được chỉ định là đối số.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
4

Bạn có thể sử dụng

d1 = {'k1': 1, 'k2': 2}
d2 = {'k3': 3, 'k4': 4}

print({**d1, **d2})
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}

print(dict(**d1, **d2))
# {'k1': 1, 'k2': 2, 'k3': 3, 'k4': 4}
8 để thêm các mục từ danh sách các khóa và danh sách các giá trị.

d1 = {'k1': 1, 'k2': 2}
d2 = {'k1': 100, 'k3': 3, 'k4': 4}

d1.update(d2)
print(d1)
# {'k1': 100, 'k2': 2, 'k3': 3, 'k4': 4}
5

Bạn có thể có nhiều python từ điển không?

Trong Python, một từ điển lồng nhau là một từ điển trong một từ điển. Đó là một tập hợp các từ điển thành một từ điển duy nhất. Ở đây, Nested_dict là một từ điển lồng nhau với Dicta dicta và dictb. Chúng là hai từ điển mỗi người có khóa và giá trị riêng.a nested dictionary is a dictionary inside a dictionary. It's a collection of dictionaries into one single dictionary. Here, the nested_dict is a nested dictionary with the dictionary dictA and dictB . They are two dictionary each having own key and value.

Tôi có thể tạo một danh sách các từ điển trong Python không?

Trong Python, bạn có thể có một danh sách các từ điển.Bạn đã biết rằng các yếu tố của danh sách Python có thể là đối tượng thuộc bất kỳ loại nào.Trong hướng dẫn này, chúng tôi sẽ tìm hiểu cách tạo một danh sách các từ điển, cách truy cập chúng, cách nối một từ điển để liệt kê và cách sửa đổi chúng.you can have a List of Dictionaries. You already know that elements of the Python List could be objects of any type. In this tutorial, we will learn how to create a list of dictionaries, how to access them, how to append a dictionary to list and how to modify them.

Có bao nhiêu cách bạn có thể tạo một từ điển trong Python?

Một từ điển trong Python được tạo thành từ các cặp giá trị chính.Trong hai phần theo sau bạn sẽ thấy hai cách tạo từ điển.Cách đầu tiên là bằng cách sử dụng một bộ niềng răng xoăn, {} và cách thứ hai là bằng cách sử dụng hàm dict () tích hợp.two ways of creating a dictionary. The first way is by using a set of curly braces, {} , and the second way is by using the built-in dict() function.

Làm thế nào tạo từ điển với nhiều giá trị cho một khóa trong Python?

Trong Python, nếu chúng ta muốn một từ điển trong đó một khóa có nhiều giá trị, thì chúng ta cần liên kết một đối tượng với mỗi khóa là giá trị.Đối tượng giá trị này nên có khả năng có các giá trị khác nhau bên trong nó.Chúng ta có thể sử dụng một tuple hoặc một danh sách làm giá trị trong từ điển để liên kết nhiều giá trị với một khóa.associate an object with each key as value. This value object should be capable of having various values inside it. We can either use a tuple or a list as a value in the dictionary to associate multiple values with a key.