Hãy làm một bài tập thú vị để kiểm tra sự hiểu biết của chúng ta và chúng ta sẽ sử dụng các biểu thức lambda.
Bây giờ tôi muốn bạn tạo một biểu thức lambda sẽ sắp xếp danh sách của chúng ta.
Vì vậy, giả sử chúng ta có danh sách của tôi và đây là danh sách của tôi.
Chúng tôi sẽ có năm, bốn, ba.
Bây giờ tôi muốn bạn tạo một biểu thức lambda một dòng sẽ in cho chúng tôi.
Một danh sách bình phương.
Vì vậy, năm phần của hai sẽ là 25.
Bốn lũy thừa của hai sẽ là 16 và ba so với lũy thừa của hai sẽ là chín.
Vì vậy, một danh sách có chứa các giá trị đó bằng cách sử dụng biểu thức lambda.
Vì vậy, đó là thử thách đầu tiên của bạn là xếp hình vuông.
Thử thách tiếp theo.
Và điều này là một chút khó khăn.
Chúng tôi sẽ thực hiện một số sắp xếp danh sách.
Hãy làm hình vuông ở đây để bạn có thể thấy.
Và trong danh sách này, sắp xếp.
Tôi có một danh sách.
Và danh sách này.
Chà, đó là một khó khăn.
Chúng tôi có một danh sách là một bộ từ 0 đến.
Sau đó, một tuple, giả sử, cho ba.
Và một tuple, giả sử là chín, chín, và cuối cùng là một tuple là mười âm.
Bây giờ, những gì tôi muốn bạn làm là sắp xếp.
Điều này dựa trên thứ hai.
Giá trị.
Hãy chắc chắn rằng đây là một dấu phẩy.
Vì vậy, đó là tôi muốn điều này được sắp xếp để bộ này là đầu tiên vì trừ một là thấp nhất, sau đó
là bộ này vì hai là cao nhất tiếp theo.
Sau đó, tuple này.
Vì vậy, làm thế nào bạn có thể làm điều đó bằng cách sử dụng các biểu thức lambda?
Bây giờ, đây là một trong những khó khăn.
Vì vậy, nếu bạn không nhận được nó, đừng lo lắng.
Tạm dừng video tại đây.
Hãy dành thời gian của bạn.
Xem nếu bạn có thể giải quyết điều này.
Nếu không, tôi sẽ đi với câu trả lời.
Điều này sẽ khá dễ dàng đối với bạn, phải không?
Chúng tôi có thể chỉ đơn giản làm một chức năng bản đồ hoặc bạn biết không?
Giả sử danh sách mới sẽ tương đương với danh sách mà chúng ta sẽ lập bản đồ.
Và ở đây, không có gì chúng ta chưa từng thấy trước đây.
Tôi sẽ nói Lambda.
Số sẽ là số lũy thừa của hai.
Và danh sách mà tôi sẽ cung cấp cho nó.
Sẽ là danh sách của tôi.
Nếu tôi chạy cái này.
Của bạn đây.
Tốt đẹp và dễ dàng.
Tốt đẹp.
Dễ.
Lót.
Còn cái này thì sao?
Điều này hơi khó và bạn thực sự phải suy nghĩ về nó.
Chúng tôi đã biết rằng chúng tôi có phương pháp sắp xếp dấu chấm, phải không?
Và thực tế là loại.
Chà, hãy xem điều gì sẽ xảy ra nếu tôi sắp xếp như thế này.
Nếu tôi in sắp xếp dấu chấm và tôi bấm chạy.
Tôi không nhận được gì vì nó sửa đổi danh sách tại chỗ.
Vì vậy, hãy chỉ in một sau khi chúng tôi đã sắp xếp nó.
Nếu tôi bấm Chạy.
Được rồi.
Nó.
Ý tôi là, có vẻ như nó được sắp xếp với anh chàng đầu tiên.
Điều gì sẽ xảy ra nếu chúng ta di chuyển cái này?
Và đây ở giữa.
Và nhấp vào Chạy.
Được rồi.
Có vẻ như nó đang phân loại nó cho tôi, nhưng nó đang phân loại nó dựa trên mục đầu tiên này.
Nhưng tôi muốn mục thứ hai này hoặc cái mà chúng ta gọi là chìa khóa thứ hai là yếu tố sắp xếp.
Và nếu bạn thấy ở đây, nếu chúng ta sắp xếp, tôi phải cung cấp cho nó một chìa khóa.
Và chúng tôi muốn chìa khóa là.
Đến.
Vì vậy, làm thế nào chúng ta có thể làm điều đó?
Chà, chúng ta có thể làm điều gì đó như thế này.
Chúng tôi có thể nói rằng chìa khóa sẽ bằng nhau.
Mỗi một trong các phím thứ hai và chúng ta có thể sử dụng biểu thức lambda ở đây.
Có thể nói lambda.
Vì vậy, tham số mặc định.
Sẽ là lambda của x và sau đó chỉ cần nói x một.
Hừ!
Hãy xem qua điều này.
Điều tôi đang nói là, này, tôi muốn bạn chạy hàm sắp xếp.
Và chìa khóa cho chức năng kiếm khi tôi sắp xếp mọi thứ là tôi muốn nó lặp
lại từng mục.
Điều đó tôi sẽ nhận được là X sẽ là bộ tuple này.
Và tôi muốn bạn sử dụng giá trị mà chúng tôi sẽ trả về, đó là giá trị thứ hai.
Vì vậy, chìa khóa sẽ luôn nằm ở mục thứ hai.
Bây giờ nếu chúng ta chạy điều này.
Nhìn kìa.
Chúng tôi có thể sắp xếp.
Bởi mục thứ hai.
Bây giờ, nếu anh ấy không hiểu được điều này, đừng lo lắng.
Điều này khá khó khăn và bạn khó có thể làm quen với cú pháp hoặc biết rằng sắp xếp hoạt động theo cách
này.
Nhưng mục đích là để cho bạn thấy rằng đây là điều phổ biến mà bạn có thể làm với các hàm lambda.
Và một cách để đảm bảo rằng bạn có thể sắp xếp bằng các khóa khác nhau.
Ví dụ, điều này sẽ hoạt động với một từ điển hoặc một danh sách khác bên trong danh sách.
Đây là một cách phổ biến để điều chỉnh việc sắp xếp của bạn và đó là một mẫu mà bạn phải nhớ.
Nhưng nó cho bạn thấy sức mạnh của lambda, nơi chúng ta không thực sự phải viết những hàm phức
tạp này nếu chúng ta thực sự chỉ cần một hàm một lần.
Và chỉ là một hàm trả về một cái gì đó đơn giản.
Lambda là một công cụ tuyệt vời để sử dụng, nhưng nếu bạn không nhận được điều này, như tôi đã nói, đừng lo lắng.
Đây là một trong những điều mà bạn sẽ phải nhớ.
Chúng ta hãy nghỉ ngơi và tôi sẽ gặp lại bạn trong phần tiếp theo.
Tạm biệt.