Chào mừng trở lại.
Bây giờ chúng ta sẽ dành một phần lớn của khóa học này để xây dựng một số dự án và sử
dụng một số mô-đun được xây dựng trong Python, cũng như sử dụng một số thư viện bên thứ ba phổ biến từ chỉ mục gói Python.
Tuy nhiên, tôi muốn chỉ cho bạn một video nhanh về một số mô-đun hữu ích mà cá nhân tôi
thích trong các mô-đun tích hợp sẵn mà chúng tôi có từ Python.
Và một số mô-đun thực sự hữu ích này thực sự cho phép chúng ta có nhiều kiểu dữ liệu hơn trong Python.
Hãy nhớ danh sách này ở đầu khóa học, nơi tôi đã nói về các kiểu dữ liệu đi kèm với Python,
sau đó chúng ta đã tìm hiểu về các lớp và cách chúng ta có thể tạo các kiểu dữ liệu của riêng mình, các đối tượng của
riêng chúng ta trong Python.
Nhưng chúng tôi cũng có những kiểu dữ liệu chuyên biệt này cũng được tích hợp sẵn trong thư viện chuẩn Python,
thực sự rất hay.
Và điều này có thể làm cho các chương trình của chúng tôi thực sự, thực sự mạnh mẽ.
Giờ đây, chúng được chuyên biệt hóa vì bạn sẽ không thấy chúng ở khắp mọi nơi, nhưng thật tốt khi biết
rằng chúng tồn tại.
Và tôi sẽ xem qua một số yêu thích của tôi.
Cái đầu tiên tôi sẽ cho bạn xem là mô-đun bộ sưu tập.
Vì vậy, mô-đun bộ sưu tập là từ bộ sưu tập hoặc các bộ sưu tập.
Và có ba điều mà tôi thực sự thích ở đây.
Vì vậy, tôi sẽ nói nhập khẩu, tôi sẽ nhập bộ đếm, từ điển mặc định và sau đó là từ điển
có thứ tự.
Bây giờ hãy chú ý xem một số trong số chúng là các lớp như thế nào vì chúng là các chữ cái viết hoa.
Và một số trong số chúng trông chỉ là một chức năng.
Và bạn có thể đọc lại trên mô-đun bộ sưu tập, cuộn qua đây và chỉ cần xem các bộ sưu tập và bạn có thể
xem tất cả các bộ sưu tập mà chúng tôi có.
Vì vậy, trong các bộ sưu tập này, hãy bắt đầu với bộ đầu tiên.
Một bộ đếm là cực kỳ hữu ích.
Giả sử tôi có một danh sách chứa một, hai, ba, bốn, năm, sáu, bảy và tôi muốn đếm có bao nhiêu
mục trong danh sách nếu tôi thực hiện bộ đếm in.
Bạn có thể xem ở đây những gì nó làm.
Nhưng về cơ bản, nếu tôi cung cấp cho nó một danh sách và nhấp vào chạy.
Được rồi.
Chuyện gì vừa xảy ra ở đây?
Nó tạo ra một từ điển nơi một có một, hai có một, ba có một.
Hừ!
Điều gì sẽ xảy ra nếu chúng ta thêm bảy nữa ở đây?
Hãy nói bảy.
Nếu tôi bấm chạy.
Bạn có thấy điều đó không?
Bảy bây giờ có hai.
Vì vậy, những gì nó làm là nó tạo ra một từ điển theo dõi số lần một mục đã xuất hiện trong một mục có thể
lặp lại.
Vì vậy, bảy xảy ra hai lần.
Vì vậy, bảy có giá trị là hai.
Một cách khác chúng ta có thể sử dụng là giả sử chúng ta có một câu và nói trong câu, tôi muốn kiểm tra.
Thôi, chúng ta hãy viết một cái gì đó.
Tôi sẽ nói blah, blah, blah.
Suy nghĩ về Python.
Nếu tôi định truy cập ở đây và hãy nói câu đó nếu tôi nhấp vào Chạy.
Kiểm tra đó ra.
Tôi thấy lá thư nào xảy ra nhiều nhất.
Trong trường hợp của chúng ta, h xảy ra năm lần, không gian xảy ra năm lần, và sau đó B xảy ra bốn lần.
Và điều này thực sự, thực sự tuyệt vời.
Bởi vì kiểu tính toán bộ đếm biến một mục như danh sách thành cái mà chúng ta gọi là bản đồ băm hoặc từ
điển như thế này để giữ số lượng thực sự là một chức năng rất hữu ích mà bạn thấy trong quá trình lập
trình.
Nó thực sự giúp ích rất nhiều cho các vấn đề tối ưu hóa.
Bây giờ, chúng ta sẽ không đi sâu vào nó ở đó, nhưng tôi chỉ muốn cho bạn
thấy rằng bộ đếm là một thứ thực sự rất hữu ích nếu bạn muốn đếm số người dùng trùng lặp hoặc email trùng lặp.
Bộ đếm có thể thực sự, thực sự hữu ích.
Còn cái tiếp theo thì sao?
Mặc định, Dick.
Chúa ơi, đó là một từ thực sự khó nói.
Được rồi, giả sử chúng ta có một từ điển ở đây, và từ điển này chúng ta sẽ có,
một từ điển rất tầm thường sẽ có một và B hai.
Thật là một từ điển đơn giản.
Bây giờ, ở đây, tôi có thể nói từ điển.
Dấu chấm.
Hoặc dấu ngoặc A và tôi sẽ có thể lấy giá trị.
Đúng.
Nếu tôi bấm Chạy.
Ồ, và tôi đã không đánh vần từ điển.
Đúng.
Hãy khắc phục điều đó.
Cái đó tốt hơn.
Hãy bình luận điều này ngay bây giờ bởi vì chúng tôi không cần điều này.
Bạn sẽ thấy rằng tôi nhận được giá trị là một.
Nhưng nếu tôi cố gắng truy cập vào thứ gì đó không tồn tại, chẳng hạn như.
Nhìn thấy?
Tôi sẽ gặp lỗi với từ điển mặc định.
Tôi thực sự sẽ nhận được một giá trị mặc định nếu một cái gì đó không tồn tại.
Vì vậy, hãy chuyển nó thành một từ điển mặc định.
Như thế này.
Và bây giờ nếu tôi chạy điều này, chúng tôi sẽ gặp lỗi.
Đối số đầu tiên phải có thể gọi được hoặc không có.
Vì vậy, những gì dict mặc định làm là nó cho phép chúng ta truy cập một khóa như thế này, nhưng cung cấp cho nó một giá trị mặc định.
Trong trường hợp của chúng tôi, chúng tôi cần cung cấp cho nó một cái gì đó giống như một đối tượng có thể gọi ở đây.
Và có thể gọi có nghĩa là một cái gì đó giống như một hàm có thể được gọi như vậy nếu tôi chạy.
Tôi nhận được số không.
Tại sao vậy?
Vâng, khi tôi chạy int.
Như thế này mà không có gì bên trong nó.
Chúng tôi nhận được số không.
Vì vậy, một cách viết tắt bởi vì điều này sẽ được chạy là cung cấp cho nó một chức năng nhanh chóng mà chúng ta sẽ không sử
dụng.
Vì vậy, chúng ta hãy làm một lambda và chỉ cho nó.
Hãy nói năm.
Vì vậy, bây giờ nếu tôi chạy cái này, hãy làm từ điển ở đây.
Chạy.
Ồ, và chúng ta hãy thử và lấy.
Một cái gì đó không tồn tại.
Nếu tôi nhấp vào Chạy, tôi nhận được năm.
Vì vậy, đây là một mô hình phổ biến.
Bạn thấy đấy, với dict mặc định, chúng tôi chỉ cung cấp cho nó một giá trị hoặc một đối tượng có thể gọi.
Trong trường hợp của chúng tôi, chúng tôi chỉ cung cấp cho nó hàm này, một hàm lambda chỉ đơn giản trả về năm.
Vì vậy, tôi thậm chí có thể nói ở đây.
Nó không tồn tại.
Tham số thứ hai sẽ là bất cứ điều gì chúng ta muốn.
Và nếu tôi đã chạy.
Tôi nhận được không tồn tại, mặc dù tôi đang truy cập vào một khóa cũng không tồn tại.
Bây giờ, nếu tôi thực hiện ở đây và tôi nhấp vào chạy.
Làm tất cả mọi việc.
Tôi vẫn nhận được một cái.
Và nếu tôi là như vậy.
Tôi đoán là chạy.
Một lần nữa, một kiểu dữ liệu nhỏ hữu ích khác.
Tiếp theo một cái được đặt hàng và cái này là một cái thú vị khác.
Và từ điển thứ tự giữ lại thứ tự mà bạn chèn vào từ điển.
Tôi se cho bạn xem.
Vì vậy, nếu chúng ta có, hãy nói từ điển và từ điển này sẽ là một từ điển thứ tự.
Vì vậy, đây là cách chúng tôi tạo ra nó.
Bây giờ ở đây, nếu tôi làm dx bằng a.
Và điều này sẽ bằng một.
Và sau đó Đ.
Be sẽ bằng hai.
Và bây giờ tôi sao chép nó và làm một cuốn từ điển thứ hai.
Hãy nói rd tới.
RD đến.
Và tôi kiểm tra.
Này, in DX có hai dx bằng nhau không?
Hãy nhớ rằng điều này sẽ kiểm tra các giá trị.
Nếu tôi chạy cái này.
Tôi hiểu đúng?
Đúng, chúng ngang nhau.
Nhưng nếu tôi thay đổi thứ tự chèn ở đây và tôi nhấp vào chạy.
Tôi hiểu sai.
Xin lỗi, đây không phải là điều tương tự vì nó duy trì trật tự.
Nếu đây là một từ điển thông thường.
Vì vậy, hãy nói thay vì những gì chúng ta có ở đây, tôi sẽ chỉ đơn giản tạo một từ điển và chúng ta sẽ chỉ.
Chúng ta sẽ chỉ làm một cái nhìn đơn giản ở đây có, giả sử, 100.
Và làm tương tự cho cái này.
DD hai.
Bằng với điều này.
Nếu bây giờ tôi chạy cái này.
Tôi đúng vì tất cả các khóa và giá trị đều giống nhau trong từ điển thông thường.
Chúng tôi không thực sự quan tâm.
Không có lệnh.
Và tôi đã đề cập đến điều này trước đây.
Để viết một từ điển bằng Python không có ý nghĩa về thứ tự.
Mặc dù khi in chìa khóa ra, chúng ta có thể sắp xếp mọi thứ theo thứ tự.
Khi từ điển của chúng tôi ngày càng lớn hơn, không có gì đảm bảo rằng khi chúng tôi in ra tất cả các khóa mà chúng
tôi sẽ sắp xếp chúng theo thứ tự.
Tuy nhiên, trong trường hợp từ điển đặt hàng, chúng tôi nhận được sự đảm bảo đó.
Bây giờ, có một số hàm ý về hiệu suất cho những điều đó.
Tuy nhiên, nhìn chung, nó có thể hữu ích trong một số tình huống.
Được rồi.
Còn một vài thứ nữa để xem qua, nhưng video này còn dài.
Vì vậy chúng ta hãy cùng nghỉ ngơi và hẹn gặp lại các bạn trong video tiếp theo.
Tạm biệt.