Học Lập Trình Với Python

Hướng dẫn sử dụng Python Dictionary

Nhân. Nguyễn

Đăng

-

Bạn có thể tìm kiếm qua : Google | Cốc Cốc | Bing với chủ đề này của Ad's Consulting Live

Danh sách 20 bài học về lập trình Python cơ bản

  1. Giới thiệu về Python
  2. Hướng dẫn cài đặt và cấu hình Python
  3. Hướng dẫn cài đặt và cấu hình Python trên Ubuntu Desktop
  4. Hướng dẫn cài đặt Visual Studio Code
  5. Hướng dẫn cài đặt PyDev cho Eclipse lập trình Python
  6. Quy ước và các phiên bản ngữ pháp trong Python
  7. Hướng dẫn lập trình Python cho người mới bắt đầu
  8. Tra cứu tài liệu Python
  9. Các lệnh rẽ nhánh trong Python
  10. Vòng lặp trong Python
  11. Hướng dẫn sử dụng Python Function
  12. Class và đối tượng trong Python
  13. Thừa kế và đa hình trong Python
  14. Hướng dẫn xử lý ngoại lệ trong Python
  15. Hướng dẫn sử dụng String trong Python
  16. Hướng dẫn sử dụng Python Lists
  17. Hướng dẫn sử dụng Python Tuples
  18. Hướng dẫn sử dụng Python Dictionary
  19. Hướng dẫn sử dụng Date Time trong Python
  20. Kết nối MySQL Database trong Python sử dụng PyMySQL

Lập trình Python nâng cao

Python Dictionary là gì?

Trong Python, dictionary (bộ từ điển) là một kiểu dữ liệu, nó là một danh sách các phần tử (element), mà mỗi phần tử là một cặp khóa và giá trị (Key & value), nó khá giống với khái niệm Map trong Java.

Các dictionary đều là đối tượng của lớp dict.

Để viết một dictionary sử dụng cặp dấu móc { } , và viết các phần tử bên trong, các phần tử phân cách nhau bởi đấu phẩy. Mỗi phần tử là một cặp khóa và giá trị ngăn cách nhau bởi dấu hai chấm ( : )

# Dictionary
 
myinfo =  {"Name": "Tran", "Age": 37, "Address" : "Vietnam"  }

Bạn cũng có thể tạo một đối tượng dictionary từ phương thức khởi tạo (constructor) của lớp dict.

# Tạo một dictionary thông qua constructor của lớp dict.
mydict = dict()
 
mydict["E01"] =  "John"
mydict["E02"] =  "King"
 
print ("mydict: ", mydict)

Đặc điểm của giá trị (value) trong dictionary:

  • Mỗi phần tử (element) của dictionary là một cặp (khóa và giá trị), giá trị có thể là một kiểu bất kỳ (string, số, các kiểu người dùng tự định nghĩa,….), và cho phép trùng lặp.

Đặc điểm của khóa (key) trong dictionary.

  • Khóa trong dictionary phải là kiểu bất biến (immutable). Như vậy nó có thể là string, số, Tuple, ….
  • Một số kiểu không được phép, chẳng hạn List (Danh sách), vì List là kiểu dữ liệu biến đổi (mutable).
  • Các khóa trong dictionary không được phép trùng lặp.
# Dictionary
 
myinfo =  {"Name": "Tran", "Age": 37, "Address" : "Vietnam"  }
 
print ("myinfo['Name'] = ", myinfo["Name"])
 
print ("myinfo['Age'] = ", myinfo["Age"])
 
print ("myinfo['Address'] = ", myinfo["Address"])

Cập nhập Dictionary

# Dictionary
myinfo =  {"Name": "Tran", "Age": 37, "Address" : "Vietnam"  }
 
# Cập nhập giá trị cho khóa (key) 'Address'
myinfo["Address"] = "HCM Vietnam"
 
# Thêm một phần tử mới với khóa (key) là 'Phone'.
myinfo["Phone"] = "12345"
 
 
print ("Element count: ", len(myinfo) )
 
print ("myinfo['Name'] = ", myinfo["Name"])
 
print ("myinfo['Age'] = ", myinfo["Age"])
 
print ("myinfo['Address'] = ", myinfo["Address"])
 
print ("myinfo['Phone'] = ", myinfo["Phone"])

Dictionary cho phép cập nhập giá trị ứng với một khóa nào đó, nó thêm mới một phần tử nếu khóa đó không tồn tại trên dictionary.

Xóa dictionary

Có 2 cách để loại bỏ một phần tử ra khỏi một dictionary.

  1. Sử dụng toán tử del
  2. Sử dụng phương thức __delitem__(key)
# (Key,Value) = (Tên, Số điện thoại)
contacts = {"John": "01217000111", \
            "Tom": "01234000111", \
            "Addison":"01217000222", "Jack":"01227000123"}
 
print ("Contacts: ", contacts)
 
print ("\n")
print ("Delete key = 'John' ")
 
# Xóa một phần tử ứng với khóa 'John'
del contacts["John"]
 
 
print ("Contacts (After delete): ", contacts)
 
print ("\n")
print ("Delete key = 'Tom' ")
 
# Xóa một phần tử ứng với khóa 'Tom'
contacts.__delitem__( "Tom")
 
 
print ("Contacts (After delete): ", contacts)
 
 
print ("Clear all element")
 
# Xóa toàn bộ các phần tử.
contacts.clear()
 
print ("Contacts (After clear): ", contacts)
 
# Xóa luôn dictionary 'contacts' khỏi bộ nhớ
del contacts
 
# Lỗi xẩy ra khi truy cập vào biến không tồn tại trên bộ nhớ
print ("Contacts (After delete): ", contacts)

Các hàm với với Dictionary

  • len(dict)
    Trả về số phần tử của dict.
  • str(dict)
    Hàm chuyển đổi ra một string biểu diễn dictionary.
  • type(variable)
    Trả về kiểu của biến được truyền vào. Nếu biến truyền vào là một dictionary, thì nó sẽ trả về đối tượng đại diện lớp ‘dict’.
  • dir(clazzOrObject)
    Trả về danh sách các thành viên của lớp (hoặc đối tượng) được truyền vào. Nếu truyền vào là lớp dict, nó sẽ trả về danh sách các thành viên của lớp dict.
contacts = {"John": "01217000111" ,"Addison": "01217000222","Jack": "01227000123"}
  
print ("contacts: ", contacts)
 
 
print ("Element count: ", len(contacts) )
 
 
contactsAsString = str(contacts)
 
  
print ("str(contacts): ", contactsAsString )
 
# Một đối tượng đại diện lớp 'dict'.
aType = type(contacts)
 
print ("type(contacts): ", aType )
 
# Hàm dir(dict) trả về các thành viên của lớp 'dict'.
print ("dir(dict): ", dir(dict) )
 
# ------------------------------------------------------------------------------------
# ['__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', 
#  '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', 
#  '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', 
#  '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', 
#  '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 
#  'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 
#  'setdefault', 'update', 'values']
# -------------------------------------------------------------------------------------

Các ví dụ ở trên bạn tự khai báo kết quả nhé 😀 Xin cảm ơn

Tôi viết để lưu trữ và chia sẻ cho bạn đọc những gì tôi học và hiểu được về lập trình và kinh nghiệm của tôi sau những năm tôi đi làm. Vậy nên nhiều bài rất ngắn các bạn đừng trách móc. Xin cảm ơn đã ủng hộ. Kênh Youtube của Nhân Nguyễn

Quảng Cáo
0 0 vote
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments



[]
1 Step 1
Previous
Next

Chủ Đề Nổi Bật

Được Quan Tâm Nhiều Trong Tháng

0
Would love your thoughts, please comment.x
()
x