Hướng dẫn what is type checking in python? - kiểm tra kiểu trong python là gì?
Xem bây giờ hướng dẫn này có một khóa học video liên quan được tạo bởi nhóm Python thực sự. Xem nó cùng với hướng dẫn bằng văn bản để hiểu sâu hơn về sự hiểu biết của bạn: Kiểm tra loại Python This tutorial has a related video course created by the Real Python team. Watch it together with the written tutorial to deepen your understanding: Python Type Checking Show
Trong hướng dẫn này, bạn sẽ xem xét kiểm tra loại Python. Theo truyền thống, các loại đã được xử lý bởi người phiên dịch Python một cách linh hoạt nhưng ngầm. Các phiên bản gần đây của Python cho phép bạn chỉ định các gợi ý loại rõ ràng có thể được sử dụng bởi các công cụ khác nhau để giúp bạn phát triển mã của mình hiệu quả hơn. Trong hướng dẫn này, bạn sẽ tìm hiểu về những điều sau đây:
Đây là một hướng dẫn toàn diện sẽ bao gồm rất nhiều mặt đất. Nếu bạn muốn có một cái nhìn nhanh chóng về cách các gợi ý loại hoạt động trong Python và xem liệu kiểm tra loại có phải là thứ bạn sẽ đưa vào mã của mình hay không, bạn không cần phải đọc tất cả. Hai phần Xin chào các loại và ưu và nhược điểm sẽ cung cấp cho bạn cách kiểm tra loại hoạt động và đề xuất về khi nó sẽ hữu ích. Loại hệ thốngTất cả các ngôn ngữ lập trình bao gồm một số loại hệ thống loại chính thức hóa loại đối tượng mà nó có thể hoạt động và cách xử lý các loại đó. Chẳng hạn, một hệ thống loại có thể xác định một loại số, với 6 là một ví dụ về một đối tượng thuộc loại số.Gõ độngPython là một ngôn ngữ được đánh máy động. Điều này có nghĩa là trình thông dịch Python chỉ kiểm tra loại khi mã chạy và loại biến được phép thay đổi trong suốt vòng đời của nó. Các ví dụ giả sau đây chứng minh rằng Python có gõ động: >>>
Trong ví dụ đầu tiên, chi nhánh 7 không bao giờ chạy để nó không bao giờ được kiểm tra. Ví dụ thứ hai cho thấy rằng khi 7 được đánh giá, nó sẽ tăng 9 vì bạn có thể thêm một số nguyên và một chuỗi trong Python.Tiếp theo, hãy để xem xem các biến có thể thay đổi loại không: >>>
Trong ví dụ đầu tiên, chi nhánh 1# headlines.py 2 3def headline(text: str, align: bool = True) -> str: 4 if align: 5 return f"{text.title()}\n{'-' * len(text)}" 6 else: 7 return f" {text.title()} ".center(50, "o") 8 9print(headline("python type checking")) 10print(headline("use mypy", align="center")) 7 không bao giờ chạy để nó không bao giờ được kiểm tra. Ví dụ thứ hai cho thấy rằng khi 1# headlines.py 2 3def headline(text: str, align: bool = True) -> str: 4 if align: 5 return f"{text.title()}\n{'-' * len(text)}" 6 else: 7 return f" {text.title()} ".center(50, "o") 8 9print(headline("python type checking")) 10print(headline("use mypy", align="center")) 7 được đánh giá, nó sẽ tăng 1# headlines.py 2 3def headline(text: str, align: bool = True) -> str: 4 if align: 5 return f"{text.title()}\n{'-' * len(text)}" 6 else: 7 return f" {text.title()} ".center(50, "o") 8 9print(headline("python type checking")) 10print(headline("use mypy", align="center")) 9 vì bạn có thể thêm một số nguyên và một chuỗi trong Python.Tiếp theo, hãy để xem xem các biến có thể thay đổi loại không: 00 Trả về loại đối tượng. Các ví dụ này xác nhận rằng loại 01 được phép thay đổi và Python chính xác thông tin loại khi nó thay đổi.Gõ tĩnh
Đối diện của gõ động là gõ tĩnh. Kiểm tra loại tĩnh được thực hiện mà không cần chạy chương trình. Ví dụ, trong hầu hết các ngôn ngữ được gõ tĩnh C và Java, điều này được thực hiện khi chương trình của bạn được biên dịch. Với việc gõ tĩnh, các biến thường không được phép thay đổi các loại, mặc dù các cơ chế để tạo ra một biến thành một loại khác có thể tồn tại. Hãy cùng nhìn vào một ví dụ nhanh chóng từ một ngôn ngữ được gõ tĩnh. Hãy xem xét đoạn trích Java sau: Dòng đầu tiên tuyên bố rằng tên biến >>> thing = "Hello"
>>> type(thing)
|