Những thủ thuật Python bạn nhất định phải biết trên con đường go pro

1863

Người viết:

Với bất kỳ ngôn ngữ nào, nếu bạn muốn thuần thục ngôn ngữ đó, bạn nhất định phải biết các thủ thuật cũng như tính năng đặc trưng của ngôn ngữ đó. Những điều này thường được tích lũy qua quá trình làm việc lâu dài, mà một vài quyển sách dạy lập trình không thể nói hết được. Python cũng không phải là ngoại lệ.

Bài viết này sẽ trình bày một vài thủ thuật trong số đó. Các thủ thuật này sẽ giúp code của bạn trong “pro” hơn, ngắn gọn và dễ hiểu hơn. Nếu bạn đã có kinh nghiệm với Python, có thể bạn đã biết gần hết các thủ thuật, nhưng vẫn có thể có những thứ bạn chưa đụng đến bao giờ. Còn nếu bạn mới làm quen với ngôn ngữ, bài viết này sẽ giúp ích cho bạn rất nhiều.

Mỗi một thủ thuật hoặc tính năng của ngôn ngữ đều được demo bằng code và tôi nghĩ rằng, mình không cần phải nói thêm gì nữa. Mọi thứ để đã được thể hiện ở code rồi.

Trong bài viết này, tôi sẽ sử dụng Python 3, code Python 2 có thể thay đổi đôi chút.

Unpack

Swap hai biến

Sử dụng toán tử * đại diện cho “phần còn lại”

Index âm

Slice

Slice với index âm

Slice nhảy bước

Slice nhảy bước âm

Slice kết hợp gán với list

Slice đặt tên

Duyệt iterable

Dùng enumerate duyệt qua cả index và giá trị

Duyệt qua key và value của dict

Zip và ứng dụng

Nhóm các phần tử liền nhau

Dùng itertools

Dùng slice

Chuyển đổi dict

Làm phẳng list

Dùng itertools

Dùng sum

Dùng list comprehension

Nâng cao: list với các phần tử bất kỳ

Sử dụng comprehensions

Biểu thứ generator

Dict comprehension

Chuyển đổi dict dùng comprehension

Tập hợp và các phép toán liên quan

Sự vi diệu của collections

namedtupple

Tập hợp cùng tuần số xuất hiện

Phần tử xuất hiện nhiều nhất

Hàng đợi hai đầu

Hàng đợi hai đầu có giới hạn độ dài

Dict có thứ tự

Dict với giá trị mặc định

Cấu trúc cây với default dict

Sinh uniqe id cho từng giá trị

Những phần tử lớn nhất và nhỏ nhất trong 1 list

Ứng dụng của itertools

Tích Descartes

Tổ hợp

Chỉnh hợp

Ghép các iterable

Nhóm các phần tử theo một tiêu chí

Tham số của startswith

Tương tự với endswithisinstance

Trong trình thông dịch, _ sẽ lưu giá trị phép tính cuối cùng

Tham số mặc định là mutable thì phải cẩn thận

Điều này đã được nhắc nhiều khi nói đến “Idiomatic Python”

Mở một server HTTP đơn giản

So sánh theo phong cách “toán học”

Đảo ngược list

Chuyển iterable thành string

Class của Python có thể thay đổi tùy ý

Hiển thị thuộc tính của 1 đối tượng

Check dung lượng bộ nhớ mà đối tượng chiếm giữ

Đặt breakpoint để debug

Zen of Python

Techtalk via viblo.asia

CHIA SẺ