Chào mừng trở lại.
Hãy thêm một lớp khác vào ứng dụng của chúng ta, để sắp xếp danh sách các liên kết của chúng ta từ trên xuống dưới và chúng ta có thể làm
điều đó khá dễ dàng.
Chúng ta hãy nghe.
Thay vì trả về Tin tức Hacker mà chúng tôi có ở đây, chúng tôi sẽ tạo một chức năng mới được gọi là sắp xếp các câu chuyện.
Bỏ phiếu và chúng tôi sẽ cung cấp cho nó Tin tức về Hacker.
Liệt kê và chúng tôi sẽ tạo chức năng này ở đây.
Chúng tôi sẽ nói định nghĩa sắp xếp.
Những câu chuyện.
Mua phiếu bầu.
Và điều này sẽ nhận được danh sách tin tặc tham số.
Và chúng ta sẽ chỉ thực hiện một thuật toán sắp xếp đơn giản ở đây.
Vì vậy, chúng ta sẽ sử dụng hàm sắp xếp mà chúng ta có.
Chúng tôi sẽ cung cấp cho nó danh sách tin tức của hacker.
Và hãy xem điều gì sẽ xảy ra.
Tôi sẽ chạy cái này.
Ồ, và tôi phải sắp xếp nó ở đây.
Đó là phương pháp.
Hãy chạy lại điều này.
Chúng tôi gặp lỗi ở đây và nếu chúng tôi đọc lỗi cho biết lỗi loại, không được hỗ trợ giữa các trường
hợp của dict và dict.
Hừ!
Điều đó nghĩa là gì?
Chà, chúng tôi đang cố gắng sắp xếp các mục trong một danh sách, nhưng chúng đều là từ điển.
Vì vậy, Python đang nói, này, tôi không hiểu.
Bạn muốn tôi sắp xếp nó như thế nào?
Bạn có muốn tôi sắp xếp nó theo tiêu đề, theo liên kết, theo phiếu bầu không?
Bạn phải nói cho tôi.
Và đây là một mô hình phổ biến với sắp xếp mà bạn sẽ phải làm quen.
Chúng ta sẽ sử dụng một hàm lambda.
Tham số thứ hai của chúng tôi chỉ đơn giản là sẽ là khóa mà chúng tôi muốn sắp xếp theo.
Và chìa khóa mà chúng ta muốn sắp xếp là phiếu bầu tốt, phải không?
Vì vậy, tất cả những gì chúng ta sẽ làm là nói Lambda.
Và nói chìa khóa.
Và chìa khóa mà chúng ta sắp xếp sẽ là phiếu bầu.
Vì vậy, nếu tôi lưu nó và chạy lại.
Nhìn kìa.
Tôi có mọi thứ được sắp xếp theo phiếu bầu.
Bạn có thể thấy.
Bây giờ, nếu điều này khiến bạn choáng ngợp với lambda, bạn có thể truy cập phần của khóa học nơi chúng ta
nói về lambda tại đây.
Nhưng đây chỉ là một mô hình chung mà bạn có thể nhớ được khi sắp xếp.
Bất cứ khi nào bạn sắp xếp từ điển, chúng tôi sử dụng các khóa và bạn có thể cung cấp cú pháp cho nó bằng lambda và
chuyển khóa cho nó.
Mà bạn muốn sắp xếp theo.
Trong trường hợp của chúng tôi, đó là các phiếu bầu.
Điều cuối cùng chúng tôi muốn làm là chúng tôi muốn thực sự có thứ tự ngược lại.
Vì vậy, mục đứng đầu trong danh sách nên là hoặc mục đầu tiên trong danh sách nên có số phiếu bầu cao
nhất.
Vì vậy, chúng ta có thể đơn giản làm điều đó với tham số thứ ba bằng cách nói đảo ngược bằng true.
Chỉ vậy thôi.
Bây giờ nếu tôi lưu và chạy mã của chúng tôi.
Chúng tôi thấy rằng chúng tôi có một danh sách tất cả các liên kết hàng đầu với số phiếu cao nhất, một trong số 309 phiếu bầu ngay tại đây.
Rất, rất tuyệt.
Bây giờ phần thú vị là bạn thậm chí không cần phải truy cập trang web Hacker News nữa.
Bạn có thể trở thành một lập trình viên hoàn chỉnh và làm những điều thú vị như chỉ cần đọc các tiêu đề ở đây và chúng ta có
thể đọc về hình phạt 5 tỷ đô la của Facebook.
Vì lý do riêng tư.
Bằng cách chỉ chọn liên kết này và giả sử bạn đang sử dụng thiết bị đầu cuối, bạn chỉ có thể nói mở lựa chọn
dưới dạng URL và xem xét điều đó.
Chúng ta có thể đọc trực tiếp câu chuyện như thế.
Rất, rất tuyệt.
Vì vậy, bây giờ bạn đã có một phiên bản Hacker News đã được làm sạch, hiệu quả hơn mà bạn có thể đọc mỗi ngày.
Và tất cả những gì bạn cần làm là chỉ cần chạy script này vào buổi sáng và đọc xong.
Bây giờ, có nhiều cách để bạn có thể mở rộng dự án này.
Bạn có thể hiển thị điều này trên tệp HTML được lập chỉ mục của riêng mình để bạn có thể thực sự nhấp vào các liên kết này.
Bạn có thể làm điều này với các trang web khác.
Nhưng thách thức và bài tập của tôi đối với bạn là điều này Làm thế nào chúng ta có thể mở rộng danh sách này để nó bao gồm nhiều hơn trang
đầu tiên của Tin tức về Hacker?
Có nghĩa là, nếu chúng ta quay trở lại Tin tức về Hacker, cho đến nay chúng ta chỉ có 30 liên kết này.
Nhưng điều gì sẽ xảy ra nếu tôi nhấp thêm vào đây và tôi muốn đi đến trang thứ hai này và tôi muốn quét hai trang đầu
tiên của Tin tức về Hacker.
Tôi sẽ thực hiện việc này như thế nào trong video tiếp theo?
Tôi sẽ đưa ra giải pháp cho bạn, nhưng tôi thách thức bạn phải tự mình tìm ra điều này và xem bạn có thể làm điều
đó như thế nào.
Nếu bạn gặp khó khăn.
Hẹn gặp lại các bạn trong video tiếp theo.
Tạm biệt.