Hướng dẫn how do type hints work in python? - làm thế nào để gợi ý loại hoạt động trong python?

Trong bài học này, bạn sẽ tìm hiểu về loại gợi ý trong Python. Loại gợi ý là một giải pháp chính thức để chỉ ra định nghĩa loại giá trị trong mã Python của bạn. Nó được chỉ định trong PEP 484 và được giới thiệu trong Python 3.5.type hinting in Python. Type hinting is a formal solution to statically indicate the type of a value within your Python code. It was specified in PEP 484 and introduced in Python 3.5.

Ở đây, một ví dụ về việc thêm thông tin loại vào một chức năng. Bạn chú thích các đối số và giá trị trả về:

def greet(name: str) -> str:
    return "Hello, " + name

Cú pháp name: str chỉ ra đối số name phải thuộc loại str. Cú pháp -> cho biết hàm greet() sẽ trả về một chuỗi.

Hàm ví dụ sau đây biến một chuỗi văn bản thành một tiêu đề bằng cách thêm vốn hóa thích hợp và một dòng trang trí:

>>>

>>> def headline(text, align=True):
...    if align:
...        return f"{text.title()}\n{'-' * len(text)}"
...    else:
...        return f" {text.title()} ".center(50, "o")
...
...
>>> print(headline("python type checking"))
Python Type Checking
--------------------

>>> print(headline("python type checking", align=False))
oooooooooooooo Python Type Checking oooooooooooooo

Bây giờ thêm gợi ý loại bằng cách chú thích các đối số và giá trị trả về như sau:

>>>

>>> def headline(text: str, align: bool = True) -> str:
...    if align:
...        return f"{text.title()}\n{'-' * len(text)}"
...    else:
...        return f" {text.title()} ".center(50, "o")
...
...
>>> headline


>>> print(headline("python type checking", align="left"))
Python Type Checking
--------------------

>>> print(headline("python type checking", align="center"))
Python Type Checking
--------------------

Bây giờ thêm gợi ý loại bằng cách chú thích các đối số và giá trị trả về như sau:

  • Về phong cách, PEP 8 khuyến nghị như sau:
  • Sử dụng các quy tắc bình thường cho các đại phân, nghĩa là không có không gian trước và một không gian sau một dấu hai chấm (text: str).
  • Sử dụng các khoảng trắng xung quanh dấu hiệu = khi kết hợp chú thích đối số với giá trị mặc định (____10).

Sử dụng không gian xung quanh mũi tên -> (

>>> def headline(text, align=True):
...    if align:
...        return f"{text.title()}\n{'-' * len(text)}"
...    else:
...        return f" {text.title()} ".center(50, "o")
...
...
>>> print(headline("python type checking"))
Python Type Checking
--------------------

>>> print(headline("python type checking", align=False))
oooooooooooooo Python Type Checking oooooooooooooo
2).f-strings, check out the following resources:

  • Để tìm hiểu thêm về các chuỗi F, hãy xem các tài nguyên sau:
  • Python 3 Lừa F-Strings: Một cú pháp định dạng chuỗi được cải tiến (Hướng dẫn)

Làm thế nào để loại gợi ý hoạt động trong Python?

Loại gợi ý là một giải pháp chính thức để chỉ ra định nghĩa loại giá trị trong mã Python của bạn. Nó được chỉ định trong PEP 484 và được giới thiệu trong Python 3.5. Tên: STR Cú pháp chỉ ra đối số tên phải thuộc loại str. -> Cú pháp biểu thị hàm Greet () sẽ trả về một chuỗi.a formal solution to statically indicate the type of a value within your Python code. It was specified in PEP 484 and introduced in Python 3.5. The name: str syntax indicates the name argument should be of type str . The -> syntax indicates the greet() function will return a string.

Gợi ý loại Python có làm gì không?

Loại gợi ý cải thiện IDE và linters.Họ làm cho nó dễ dàng hơn nhiều để có lý do tĩnh về mã của bạn.Nhập gợi ý giúp bạn xây dựng và duy trì kiến trúc sạch hơn.Hành động viết gợi ý loại buộc bạn phải suy nghĩ về các loại trong chương trình của bạn.improve IDEs and linters. They make it much easier to statically reason about your code. Type hints help you build and maintain a cleaner architecture. The act of writing type hints forces you to think about the types in your program.

Các gợi ý loại có được thi hành trong Python không?

Python sẽ luôn luôn là một ngôn ngữ được đánh máy động.Tuy nhiên, PEP 484 đã giới thiệu các gợi ý loại, điều này cũng có thể thực hiện kiểm tra loại tĩnh của mã python.Không giống như cách các loại hoạt động trong hầu hết các ngôn ngữ được gõ tĩnh khác, bản thân các gợi ý không khiến Python thực thi các loại.type hints by themselves don't cause Python to enforce types.

Các gợi ý loại có tăng tốc Python không?

Vì vậy, tóm lại: Không, chúng sẽ không gây ra bất kỳ hiệu ứng thời gian chạy nào, trừ khi bạn sử dụng chúng một cách rõ ràng.no, they will not cause any run-time effects, unless you explicitly make use of them.