Page 41 - Python Simple
P. 41

5. Cấu trúc dữ liệu                                              http://www.vithon.org/tutorial/2.5/node7.html



             dùng làm khóa nếu nó chỉ chứa chuỗi, số, hoặc tuple; nếu tuple chứa bất kỳ một
             đối tượng khả biến nào thì nó không thể được dùng làm khóa. Bạn không thể
             dùng danh sách làm khóa, vì danh sách có thể được thay đổi ngay tại chỗ với
             phép gán vào chỉ mục, phép gán miếng cắt, hoặc các phương thức khác như
             append() và extend().


             Dễ nhất là nghĩ về từ điển như một tập hợp không thứ tự của các bộ khóa: giá trị
             , với điều kiện là khóa phải là duy nhất (trong cùng một từ điển). Một cặp ngoặc
             nhọn tạo một từ điển rỗng: {}. Đặt một loạt các cụm khóa:giá trị phân biệt bởi
             dấu phẩy vào trong ngoặc nhọn tạo nên các cặp khóa:giá trị ban đầu cho từ
             điển; đây cũng là cách mà từ điển được xuất ra.

             Công việc chính của từ điển là chứa một giá trị vào một khóa nào đó và lấy lại
             giá trị từ khóa đó. Cũng có thể xóa một cặp khóa:giá trị với del. Nếu bạn chứa
             vào một khóa đã có sẵn, giá trị cũ sẽ bị mất. Lấy giá trị từ một khóa không tồn
             tại sẽ gây nên lỗi.

             Phương thức keys() của đối tượng từ điển trả về một danh sách các khóa đã
             được dùng trong từ điển, theo một thứ tự bất kỳ (nếu bạn muốn chúng được sắp
             xếp, chỉ cần áp dụng phương thức sort() vào danh sách các khóa). Để kiểm tra
             xem một khóa có trong từ điển hay không, có thể dùng phương thức has_key()

             hoặc từ khóa in .

             Đây là một ví dụ nhỏ về cách dùng từ điển:

                  >>> tel = {'jack': 4098, 'sape': 4139}
                  >>> tel['guido'] = 4127
                  >>> tel
                  {'sape': 4139, 'guido': 4127, 'jack': 4098}
                  >>> tel['jack']
                  4098
                  >>> del tel['sape']
                  >>> tel['irv'] = 4127
                  >>> tel
                  {'guido': 4127, 'irv': 4127, 'jack': 4098}
                  >>> tel.keys()
                  ['guido', 'irv', 'jack']
                  >>> tel.has_key('guido')
                  True
                  >>> 'guido' in tel
                  True

             Phương thức dict() dùng để tạo từ điển trực tiếp từ các danh sách các cụm
             khóa-giá trị chứa trong tuple. Khi các cụm có một mẫu nào đó, việc gộp danh
             sách có thể chỉ ra ngắn gọn danh sách khóa-giá trị.

                  >>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])
                  {'sape': 4139, 'jack': 4098, 'guido': 4127}
                  >>> dict([(x, x**2) for x in (2, 4, 6)])     # use a list comprehension
                  {2: 4, 4: 16, 6: 36}





     8 of 11                                                                                  08/31/2011 07:39 AM
   36   37   38   39   40   41   42   43   44   45   46