Tại sao từ điển không có thứ tự trong Python?

Từ điển là một bộ sưu tập không có thứ tự chứa các cặp

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
9 được phân tách bằng dấu phẩy bên trong dấu ngoặc nhọn. Từ điển được tối ưu hóa để truy xuất các giá trị khi biết khóa

Sau đây khai báo một đối tượng từ điển

Thí dụ. Từ điển

capitals = {"USA":"Washington D.C.", "France":"Paris", "India":"New Delhi"}

Ở trên,

dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
0 là một đối tượng từ điển chứa các cặp khóa-giá trị bên trong
dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
1. Phía bên trái của
dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
2 là một khóa và phía bên phải là một giá trị. Khóa phải là duy nhất và là một đối tượng bất biến. Một số, chuỗi hoặc bộ dữ liệu có thể được sử dụng làm khóa. Do đó, các từ điển sau đây cũng hợp lệ

Thí dụ. đối tượng từ điển

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value

Tuy nhiên, từ điển có danh sách làm khóa không hợp lệ vì danh sách có thể thay đổi

Lỗi. Liệt kê dưới dạng Dict Key

dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}

Tuy nhiên, một danh sách có thể được sử dụng như một giá trị

Thí dụ. Liệt kê dưới dạng giá trị từ điển

dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}

Khóa giống nhau không thể xuất hiện nhiều lần trong một bộ sưu tập. Nếu khóa xuất hiện nhiều lần, chỉ khóa cuối cùng sẽ được giữ lại. Giá trị có thể thuộc bất kỳ kiểu dữ liệu nào. Một giá trị có thể được gán cho nhiều khóa

Thí dụ. Phím duy nhất

________số 8

dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
3 là lớp của tất cả các từ điển, như hình bên dưới

Thí dụ. Loại khác biệt

capitals = {"USA":"Washington D.C.", "France":"Paris", "India":"New Delhi"}
0

Một từ điển cũng có thể được tạo bằng cách sử dụng phương thức xây dựng dict[]

Thí dụ. Phương thức xây dựng dict[]

capitals = {"USA":"Washington D.C.", "France":"Paris", "India":"New Delhi"}
1

truy cập từ điển

Từ điển là một bộ sưu tập không có thứ tự, do đó không thể truy cập giá trị bằng cách sử dụng chỉ mục;

Thí dụ. Nhận giá trị từ điển

capitals = {"USA":"Washington D.C.", "France":"Paris", "India":"New Delhi"}
2

Ghi chú

Các phím phân biệt chữ hoa chữ thường. Vì vậy,

dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
4 và
dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
5 được coi là các khóa khác nhau. Nếu khóa được chỉ định không tồn tại thì nó sẽ phát sinh lỗi

Sử dụng phương thức get[] để truy xuất giá trị của khóa ngay cả khi không biết khóa. Nó trả về

dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
6 nếu khóa không tồn tại thay vì gây ra lỗi

Thí dụ. Nhận giá trị từ điển

capitals = {"USA":"Washington D.C.", "France":"Paris", "India":"New Delhi"}
6

Truy cập từ điển bằng vòng lặp For

Sử dụng vòng lặp for để lặp từ điển trong tập lệnh Python

Thí dụ. Truy cập từ điển bằng vòng lặp For

capitals = {"USA":"Washington D.C.", "France":"Paris", "India":"New Delhi"}
7

đầu ra

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
0

cập nhật từ điển

Như đã đề cập trước đó, khóa không thể xuất hiện nhiều lần. Sử dụng cùng một khóa và gán một giá trị mới cho nó để cập nhật đối tượng từ điển

Thí dụ. Cập nhật giá trị của khóa

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
1

Sử dụng khóa mới và gán giá trị cho nó. Từ điển sẽ hiển thị một cặp khóa-giá trị bổ sung trong đó

Thí dụ. Thêm cặp khóa-giá trị mới

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
2

Xóa giá trị khỏi từ điển

Sử dụng các phương thức từ khóa del, pop[] hoặc popitem[] để xóa một cặp khỏi từ điển hoặc chính đối tượng từ điển. Để xóa một cặp, hãy sử dụng khóa của cặp đó làm tham số. Để xóa một đối tượng từ điển, hãy sử dụng tên của nó

Thí dụ. Xóa khóa-giá trị

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
3

dict_obj = {["Mango","Banana"]:"Fruit", ["Blue", "Red"]:"Color"}
7 chỉ ra rằng đối tượng từ điển đã bị xóa khỏi bộ nhớ

Truy xuất các khóa và giá trị từ điển

Các phương thức keys[] và values[] trả về một đối tượng dạng xem chứa các khóa và giá trị tương ứng

Thí dụ. phím[]

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
4

Kiểm tra khóa từ điển

Bạn có thể kiểm tra xem khóa phụ có tồn tại trong bộ sưu tập từ điển hay không bằng cách sử dụng từ khóa ________ 28 hoặc ________ 29, như minh họa bên dưới. Lưu ý rằng nó chỉ kiểm tra các khóa không phải giá trị

Thí dụ. kiểm tra chìa khóa

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
5

Từ điển đa chiều

Giả sử có ba đối tượng từ điển, như bên dưới

Thí dụ. Từ điển

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
6

Hãy gán số thứ tự cho các sinh viên này và tạo một từ điển đa chiều với số thứ tự là chính và các từ điển trên theo giá trị của chúng

Thí dụ. Từ điển đa chiều

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
7

Đối tượng

dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}
0 là một từ điển hai chiều. Ở đây
dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}
1,
dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}
2 và
dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}
3 lần lượt được gán làm giá trị cho các khóa 1, 2 và 3.
dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}
4 trả về
dict_obj = {"Fruit":["Mango","Banana"], "Color":["Blue", "Red"]}
1

Thí dụ. Truy cập từ điển đa chiều

d = {} # empty dictionary

numNames={1:"One", 2: "Two", 3:"Three"} # int key, string value

decNames={1.5:"One and Half", 2.5: "Two and Half", 3.5:"Three and Half"} # float key, string value

items={["Parker","Reynolds","Camlin"]:"pen", ["LG","Whirlpool","Samsung"]: "Refrigerator"} # tuple key, string value

romanNums = {'I':1, 'II':2, 'III':3, 'IV':4, 'V':5} # string key, int value
8

Phương pháp từ điển tích hợp

Phương thứcMô tảdict. clear[] Xóa tất cả các cặp khóa-giá trị khỏi từ điển. mệnh lệnh. copy[] Trả về một bản sao nông của từ điển. mệnh lệnh. fromkeys[] Tạo một từ điển mới từ iterable đã cho [chuỗi, danh sách, bộ, bộ] dưới dạng khóa và với giá trị được chỉ định. mệnh lệnh. get[] Trả về giá trị của khóa được chỉ định. mệnh lệnh. items[]Trả về đối tượng dạng xem từ điển cung cấp dạng xem động của các thành phần từ điển dưới dạng danh sách các cặp khóa-giá trị. Đối tượng xem này thay đổi khi từ điển thay đổi. mệnh lệnh. keys[]Trả về một chứa danh sách các khóa của từ điển. mệnh lệnh. pop[] Xóa khóa và trả về giá trị của nó. Nếu một khóa không tồn tại trong từ điển, thì trả về giá trị mặc định nếu được chỉ định, nếu không sẽ ném KeyError. mệnh lệnh. popitem[] Loại bỏ và trả về một bộ cặp [khóa, giá trị] từ từ điển. Các cặp được trả lại theo thứ tự Nhập sau xuất trước [LIFO]. mệnh lệnh. setdefault[] Trả về giá trị của khóa được chỉ định trong từ điển. Nếu không tìm thấy khóa, thì nó sẽ thêm khóa có giá trị mặc định đã chỉ định. Nếu giá trị mặc định không được chỉ định thì nó đặt giá trị Không có. mệnh lệnh. update[] Cập nhật từ điển với các cặp khóa-giá trị từ một từ điển khác hoặc một lần lặp khác, chẳng hạn như bộ có các cặp khóa-giá trị. mệnh lệnh. các giá trị [] Trả về cái cung cấp chế độ xem động cho tất cả các giá trị trong từ điển. Đối tượng xem này thay đổi khi từ điển thay đổi

Tại sao từ điển Python không được đặt hàng?

Từ điển trong Python là một tập hợp các giá trị dữ liệu không có thứ tự, được sử dụng để lưu trữ các giá trị dữ liệu giống như bản đồ, không giống như các Loại dữ liệu khác chỉ chứa một giá trị dưới dạng phần tử, Từ điển giữ khóa. cặp giá trị. Khóa-giá trị được cung cấp trong từ điển để làm cho nó được tối ưu hóa hơn .

Từ điển không có thứ tự có nghĩa là gì?

Lưu ý rằng các từ điển không có thứ tự, nghĩa là bất cứ khi nào bạn duyệt qua một từ điển, bạn sẽ xem qua từng khóa, nhưng bạn không được đảm bảo sẽ nhận được chúng theo bất kỳ thứ tự cụ thể nào< . .

Tại sao từ điển là tập hợp các phần tử không có thứ tự?

Từ điển là một tập hợp các cặp khóa-giá trị không theo thứ tự [Fixture 5]. Các khóa là bất biến, duy nhất và không có thứ tự, giống như các phần tử của một tập hợp. Không có giới hạn nào đối với các giá trị được lưu trữ bằng các khóa đó. chúng không nhất thiết phải là bất biến hoặc duy nhất .

Tại sao từ điển không phải là một chuỗi?

Danh sách, bộ dữ liệu và chuỗi được gọi là trình tự, bởi vì các phần tử của chúng xuất hiện theo thứ tự. Từ điển là loại từ ghép đầu tiên mà chúng tôi thấy không phải là một chuỗi, vì vậy chúng tôi không thể lập chỉ mục hoặc cắt từ điển .

Chủ Đề