Các giá trị của Từ điển Python có thể được cập nhật bằng hai cách sau. e. sử dụng phương thức update[] và đồng thời, sử dụng dấu ngoặc vuông
Từ điển đại diện cho cặp khóa-giá trị trong Python, được đặt trong dấu ngoặc nhọn. Các khóa là duy nhất và dấu hai chấm phân tách nó khỏi giá trị, trong khi dấu phẩy phân tách các mục. Cùng với đó, kích thước bên trái trước dấu hai chấm là các khóa, trong khi bên phải là các giá trị tương ứng của nó
Trước tiên chúng ta hãy tạo Từ điển Python và tìm nạp tất cả các giá trị. Ở đây, chúng tôi đã đưa 4 cặp khóa-giá trị vào Từ điển và hiển thị chúng. Sản phẩm, Mô hình, Đơn vị và Có sẵn là các khóa của Từ điển. Ngoại trừ khóa Đơn vị, tất cả đều có giá trị Chuỗi -
Ví dụ
đầu ra
{'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Units = 120 Available = Yes
Ở trên, chúng tôi đã hiển thị các cặp 4 khóa-giá trị trong Từ điển với Thông tin Sản phẩm. Bây giờ, chúng ta sẽ xem hai cách để cập nhật các giá trị Từ điển trong Python
Cập nhật từ điển bằng phương pháp cập nhật
Bây giờ chúng ta hãy cập nhật các giá trị Dictionary bằng phương thức update[]. Chúng tôi đã hiển thị Từ điển trước khi cập nhật các giá trị. Sau đó, hàm update[] được sử dụng và các giá trị được cập nhật được đặt làm tham số của phương thức. Ở đây, chúng tôi chỉ cập nhật hai giá trị chính i. e. Sản phẩm và Mẫu mã −
Ví dụ
đầu ra
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
Ở đầu ra, chúng ta có thể thấy hai giá trị cuối cùng được cập nhật mà không cần sử dụng phương thức updated[], phần còn lại giữ nguyên
Phương thức
{'x': 2, 'y': 3, 'z': 0}8 cập nhật từ điển với các phần tử từ một đối tượng từ điển khác hoặc từ một cặp khóa/giá trị có thể lặp lại
Ví dụ
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
Cú pháp cập nhật từ điển[]
Cú pháp của
{'x': 2, 'y': 3, 'z': 0}8 là
dict.update[[other]]
cập nhật [] Tham số
Phương thức
{'x': 2, 'y': 3, 'z': 0}8 lấy một từ điển hoặc một đối tượng có thể lặp lại của các cặp khóa/giá trị [thường là các bộ dữ liệu]
Nếu gọi
{'x': 2, 'y': 3, 'z': 0}8 mà không truyền tham số, từ điển sẽ không thay đổi
Giá trị trả về từ bản cập nhật[]
Phương thức
{'x': 2, 'y': 3, 'z': 0}8 cập nhật từ điển với các phần tử từ một đối tượng từ điển hoặc một đối tượng có thể lặp lại của các cặp khóa/giá trị
Nó không trả về bất kỳ giá trị nào [trả về
dict.update[[other]]1]
ví dụ 1. Hoạt động của bản cập nhật[]
d = {1: "one", 2: "three"}
d1 = {2: "two"}
# updates the value of key 2
print[d]
d1 = {3: "three"}
# adds element with key 3
print[d]
đầu ra
{1: 'one', 2: 'two'} {1: 'one', 2: 'two', 3: 'three'}
Ghi chú. Phương thức
{'x': 2, 'y': 3, 'z': 0}8 thêm [các] phần tử vào từ điển nếu khóa không có trong từ điển. Nếu khóa nằm trong từ điển, nó sẽ cập nhật khóa với giá trị mới
ví dụ 2. update[] Khi Tuple được thông qua
dictionary = {'x': 2}
dictionary.update[[['y', 3], ['z', 0]]]
print[dictionary]
đầu ra
________số 8Ở đây, chúng ta đã chuyển một danh sách các bộ dữ liệu
dict.update[[other]]3 cho hàm
{'x': 2, 'y': 3, 'z': 0}8. Trong trường hợp này, phần tử đầu tiên của bộ dữ liệu được sử dụng làm khóa và phần tử thứ hai được sử dụng làm giá trị
Ở đây, chúng ta thấy rằng giá trị của khóa
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG605 được thay thế bằng giá trị
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG610. Vui lòng lưu ý cách giữ lại cặp khóa-giá trị được cập nhật lần này
Đánh giá bài viết này
Vấn đề. Đưa ra một từ điển bằng Python;
- Phương pháp 1. Sử dụng vòng lặp
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
27 - Phương pháp 2. Sử dụng hàm
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
28 - Phương pháp 3. Sử dụng các hàm
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
29 vàDictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
50 - Phương pháp 4. Sử dụng một sự hiểu biết từ điển
Tóm lược. Sử dụng một trong các phương pháp sau để chuyển đổi giữa các khóa và giá trị trong từ điển với các giá trị duy nhất
Hãy tưởng tượng bạn vào buổi sáng, trên máy tính để bàn, với cà phê và máy tính xách tay trước mặt. Bạn cảm thấy thư giãn, thoải mái, chắc chắn về bản thân và sẵn sàng cho một ngày tuyệt vời khác để làm những gì bạn yêu thích nhất. Để giải quyết vấn đề với bộ não và ngón tay của bạn bằng cách sử dụng tiềm năng mà Python mang lại cho bạn
Sau đó, sếp của bạn đến và nhìn vào mắt bạn, ông ấy nói. “Hãy nhìn xem, chúng tôi có một vấn đề và tôi cần bạn sửa nó. Bạn có 1 giờ để cung cấp cho tôi một giải pháp mà chúng tôi có thể sao chép cho tất cả các tệp chúng tôi có trong công ty hoặc tất cả chúng tôi đều bị sa thải”
Sếp của bạn là một người tốt. Anh ấy cho bạn ví dụ này để bắt đầu với.
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG66
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG67
Trong bài viết này, chúng tôi sẽ chỉ cho bạn bốn phương pháp để thực hiện điều này. Phương pháp Pythonic nhất là Phương pháp 4 — vì vậy, nếu bạn không có nhiều thời gian, hãy chuyển sang Phương pháp 4 ngay lập tức
Lý lịch
Nếu bạn là một nhà phát triển Python có kinh nghiệm, bạn có thể có một nền tảng vững chắc về tất cả các loại cấu trúc dữ liệu. Nếu vậy, chỉ cần bỏ qua và chuyển sang Phương pháp 1. Mặt khác, nếu bạn chưa quen với chủ đề này hoặc bạn muốn làm mới kiểu dữ liệu này, tôi mời bạn đọc những dòng dưới đây. Là một nhà phát triển Python, điều quan trọng là phải có kiến thức và xây dựng nền tảng vững chắc về cấu trúc dữ liệu.
Trong bài viết này, chúng ta sẽ nói về cách hoàn nguyên một trong những cấu trúc hữu ích nhất mà bất kỳ nhà phát triển Python nào cũng phải thành thạo, đây là từ điển.
Nhưng đó là từ điển gì?
Từ điển là một cấu trúc dữ liệu được hình thành bởi một bộ khóa. cặp giá trị.
Cú pháp là
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG68
Nó cũng có thể được biểu diễn như thế này để dễ đọc
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG62
Ghi chú. Thực vậy, dấu phẩy cuối cùng sau
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG651 là không cần thiết. Nhưng tôi khuyên bạn nên tập nó như một thói quen và luôn viết nó. Nó sẽ giúp bạn tiết kiệm thời gian bằng cách tránh các lỗi không mong muốn trong mã sạch trong tương lai của bạn 🙂
Khóa có thể là bất kỳ loại nào, nhưng điều quan trọng cần làm nổi bật ở đây là
- Khóa phải là duy nhất trong toàn bộ từ điển. Nếu không phải khóa trùng lặp cuối cùng sẽ ghi đè khóa đã xác định trước đó
Ví dụ về từ điển có số nguyên làm khóa
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG65
Ví dụ về từ điển có dấu phẩy làm khóa
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
2Ví dụ về từ điển có chuỗi làm khóa
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
3Ví dụ về một từ điển với một bộ làm khóa
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
4Ghi chú. Mặc dù bạn có thể sử dụng dấu phẩy làm khóa, nhưng điều đó không được khuyến khích lắm vì nếu bạn xác định 1. 0 và 1, phím cuối cùng sẽ ghi đè lên phím đầu tiên
Ở đây bạn có một ví dụ
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
5- Nó phải là bất biến. Điều đó có nghĩa là khóa có thể là một số nguyên, một float, một boolean, một chuỗi hoặc thậm chí là một bộ trong số những thứ khác, nhưng không bao giờ là một danh sách hoặc một từ điển khác vì những cấu trúc dữ liệu này có thể thay đổi [Nếu bạn cần tìm hiểu thêm về khái niệm này, tôi đề xuất .
Phương pháp 1. Sử dụng phương pháp vòng lặp for
Giải pháp đơn giản nhất và điển hình mà bất kỳ nhà phát triển nào cũng có thể khám phá lúc đầu là sử dụng cấu trúc “vòng lặp for” để thực hiện một phép lặp xác định nhằm hoàn thành nhiệm vụ
Vòng lặp for python được biểu diễn bằng một biến, một lần lặp và một số câu lệnh.
Cú pháp là.
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
6Biết cấu trúc này, chúng ta có thể có cách tiếp cận hợp lệ đầu tiên cho giải pháp.
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG670
đầu ra
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG671
Giải trình
- Trong đoạn mã trên, chúng ta cần tạo một phiên bản mới của từ điển bằng cách sử dụng biểu thức
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
52 và gán nó cho một biến mới có tên làDictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
53.
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG672
- Sau đó, chúng tôi sử dụng “vòng lặp for” để lặp lại các khóa và giá trị của từ điển
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
54 là các biến. Chìa khóa và giá trịDictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
55 là cấu trúc dữ liệu có thể lặp lại có thể là từ điển, danh sách hoặc bộ dữ liệu. Trong trường hợp này, chúng ta cần thêm phương thức. items[] trả về danh sách các cặp tuple [key, value].Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
56 trả về
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG673
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
57 là câu lệnh mà chúng tôi chuyển đổi các giá trị của từ điển.
Phương pháp 2. Sử dụng chức năng nén
Một giải pháp khả thi khác là sử dụng hàm
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG658.
Cú pháp là
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG674
Nhưng làm thế nào nó hoạt động?
Chà, hàm
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG628 trả về một đối tượng được tạo từ một số trình vòng lặp được cung cấp dưới dạng tham số. Các trình vòng lặp này có thể là danh sách, nhưng chúng phải có cùng số mục trong mỗi. Điều này là để đảm bảo sự tham gia thích hợp giữa các mục. Ở đây bạn có thể xem một ví dụ
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG675
Vì vậy, tại thời điểm này, giải pháp cho phương pháp thứ hai sẽ là
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG676
đầu ra
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG671
Giải trình
Ý tưởng đằng sau giải pháp này là cung cấp cho hàm zip 2 lần lặp, thực tế là 2 danh sách, trong trường hợp này, để tạo một danh sách các bộ dữ liệu duy nhất. Mẹo ở đây là sử dụng khóa làm giá trị và ngược lại bằng cách sử dụng biểu mẫu
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
20 để lấy giá trị và marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
21 để lấy khóa trong hai danh sách riêng biệt. Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG678
- Khi điều này được thực hiện nếu chúng ta sử dụng chức năng zip, chúng ta sẽ có
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG679
- Tại thời điểm này, điều duy nhất chúng ta cần tạo một từ điển bằng cách sử dụng hàm tạo kiểu
22 và nhận được kết quả mà chúng ta đang tìm kiếmmarks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG680
Phương pháp 3. Sử dụng các chức năng bản đồ và đảo ngược
Giải pháp thứ ba bạn có thể nghĩ đến là sử dụng hàm
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
23 và marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
24 cùng với hàm tạo marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
25Nhưng nó hoạt động như thế nào và làm thế nào để chúng ta sử dụng chính xác hai chức năng này?
Chức năng đảo ngược
Hàm đảo ngược có thuộc tính trả về một trình vòng lặp theo thứ tự đảo ngược của một chuỗi đã cho. Điều quan trọng là phải đánh dấu rằng
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
26 chỉ chấp nhận các chuỗi chứ không phải bất kỳ loại trình vòng lặp nào khác. Vì vậy, trong trường hợp bạn muốn đảo ngược một trình vòng lặp, bạn nên cân nhắc chuyển đổi nó trước đó thành một danh sách. Cú pháp là
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG681
ví dụ
trình tự chuỗi.
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG682
trình tự danh sách
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG683
trình tự bộ
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG684
trình tự phạm vi
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG685
Có lẽ nếu bạn đã đọc Coffee Break Python Slicing của Chris, bạn sẽ nhận thấy rằng trường hợp cuối cùng có thể đạt được trước
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
27. Tuy nhiên, có vẻ như từ tài liệu rằng marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
28 nhanh hơn và sử dụng ít bộ nhớ hơn. Vì vậy, hãy giữ nó trong tâm tríChức năng bản đồ
Để hiểu được chức năng bản đồ, trước tiên, chúng ta cần hiểu bản đồ có nghĩa là gì. Khi chúng tôi sử dụng bản đồ, những gì chúng tôi đang theo đuổi là tạo ra một lần lặp mới từ bản gốc bằng cách áp dụng một hàm chuyển đổi cho từng mục của nó.
Nói cách khác, là một cách để xử lý các lần lặp mà không cần vòng lặp.
Cú pháp là
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG686
29. là chức năng sẽ được áp dụng cho mọi mục của iterablemarks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
30. là tham số sẽ được ánh xạ. Nó có thể là một danh sách, tuple, v.v.marks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
Ví dụ
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG687
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG688
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG689
Vì vậy, bây giờ chúng ta đã biết lý thuyết đằng sau hai chức năng này, chúng ta có thể kết luận rằng một giải pháp chấp nhận được bằng cách kết hợp chúng sẽ là giải pháp này
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG620
Tại thời điểm này, bạn hoàn toàn có thể nghĩ rằng cuối cùng, bạn đã có giải pháp phù hợp và phù hợp nhất với Pythonic, phải không? . Vì vậy, hãy tiếp tục đọc.
Phương pháp 4. Sử dụng một sự hiểu biết từ điển
Mặc dù các công cụ lập trình chức năng như
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
31 đã rất hữu ích trong quá khứ vì là thành phần cơ bản trong python từ hơn 20 năm, nhưng ngày nay có những dạng khác đang trở nên phổ biến hơn đối với các nhà phát triển Python như hiểu danh sách hoặc hiểu từ điểnHọ làm việc như thế nào?
Chà, hiểu từ điển là một cách nhanh chóng và ngắn gọn để tạo một từ điển thành một từ điển mới bằng cách áp dụng thao tác chuyển đổi cho từng thành viên của nó nếu cần. Như bạn có thể nhận thấy ở đây, chúng tôi tập trung vào việc hiểu từ điển, tuy nhiên, nếu bạn quan tâm đến việc hiểu danh sách, tôi khuyên bạn cũng nên đọc bài viết tuyệt vời này trong Finxter
Cú pháp là
hiểu từ điển
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG621
Ví dụ
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG622
Giải trình
- Sự biểu lộ.
32 ? . Trong trường hợp này, chúng tôi đang áp dụng sức mạnh thứ ba. Đây là 1^3, 2^3, 3^3, 4^3marks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
- Bối cảnh.
33 ? . Trong trường hợp này, tất cả chúng. Ngữ cảnh là một số tùy ý của for và ifmarks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
Ví dụ với câu lệnh IF
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG623
Như bạn có thể thấy, nó tạo ra một từ điển mới với các giá trị mà câu lệnh IF là đúng
Đã nói rằng, bạn có thể tự hỏi mình. “Tôi có thể tạo từ điển bằng khả năng hiểu từ điển mà không cần có từ điển trước đó không?” . Chúng tôi có thể tạo một từ điển mới trong đó ngữ cảnh có thể lặp lại nhưng không nhất thiết phải là từ điển. Chúng tôi có thể sử dụng phạm vi chức năng để tạo các lần lặp hoặc thậm chí sử dụng một danh sách nhất định. Hãy để chúng tôi xem một số ví dụ
chức năng phạm vi
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG624
Danh sách
Hãy tưởng tượng bạn có một danh sách khách hàng mà một số đã được đưa vào hệ thống với chữ hoa, chữ thường hoặc viết hoa. Và công việc của bạn là biến chúng thành một từ điển viết thường và truyền lại kết quả cho hệ thống. Đây có thể là một giải pháp hợp lệ
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG625
Vì vậy, quay lại từ dấu ngoặc đơn này, giải pháp đảo ngược từ điển bằng cách sử dụng khả năng hiểu từ điển sẽ là
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG626
Giải trình
Biến đổi ở đây là thay đổi thứ tự các cặp
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
34 để có một cặp marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
35. Vì vậy, những gì chúng tôi nói với Python là. “Áp dụng phép biến đổi này marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
36 [thay đổi thứ tự] cho mọi mục marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
37 trong từ điển đã cho”- Sự biểu lộ.
38marks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48} - Bối cảnh.
39marks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
Phần kết luận
Trong bài viết này, chúng ta đã học cách đảo ngược các cặp
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
34 của một từ điển bằng cách sử dụng- Cấu trúc vòng lặp
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
27 - Hàm
Dictionary = {'Product': 'Mobile', 'Model': 'XUT', 'Units': 120, 'Available': 'Yes'} Product = Mobile Model = XUT Updated Dictionary = {'Product': 'SmartTV', 'Model': 'PHRG6', 'Units': 120, 'Available': 'Yes'} Updated Product = SmartTV Updated Model = PHRG6
28 - Hàm
31 vàmarks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
44, cách kết hợp chúng và lặp lại là gìmarks = {'Physics':67, 'Maths':87} internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks] # Output: {'Physics': 67, 'Maths': 87, 'Practical': 48} - Khả năng hiểu từ điển và các phần được thể hiện trong đó bằng biểu thức và ngữ cảnh
Để giải thích điều này, chúng tôi đã khám phá từ điển là gì. Thuộc tính của chúng là gì, chẳng hạn như tính bất biến và tính duy nhất của khóa. Chúng tôi cũng đã đề cập đến điều gì sẽ xảy ra nếu chúng tôi lặp lại một khóa có giá trị khác hoặc ngược lại, chúng tôi sử dụng một số hai lần làm khóa mặc dù một khóa là kiểu float và khóa kia là kiểu số nguyên
Cuối cùng, chúng tôi đã phát hiện ra rằng khả năng hiểu từ điển đang trở nên phổ biến hơn các chức năng như
marks = {'Physics':67, 'Maths':87}
internal_marks = {'Practical':48}
marks.update[internal_marks]
print[marks]
# Output: {'Physics': 67, 'Maths': 87, 'Practical': 48}
31 bởi vì, nếu bạn không lạm dụng, nó sẽ giúp bạn rút ngắn số dòng mã của mình, làm cho mã sạch hơn, dễ hiểu, thanh lịch và đậm chất Pythonic hơn. Trong trường hợp bạn muốn tìm hiểu sâu hơn về vấn đề này, vui lòng đọc bài viết tuyệt vời này về cách hiểu từ điển