Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Anotasi Pembolehubah Meningkatkan Sistem Jenis Python?

Bagaimanakah Anotasi Pembolehubah Meningkatkan Sistem Jenis Python?

Barbara Streisand
Barbara Streisandasal
2024-12-06 11:00:14921semak imbas

How Do Variable Annotations Enhance Python's Type System?

Anotasi Pembolehubah: Mempertingkatkan Sistem Jenis Python

Anotasi pembolehubah telah diperkenalkan dalam Python 3.6, berikutan pelaksanaan pembayang jenis dengan PEP 484. Manakala pembayang jenis hanya membayangkan jenis pembolehubah yang dijangka, anotasi membawa konsep lebih jauh dengan membenarkan anda untuk terus nyatakan jenis pembolehubah.

Sintaks dan Ciri

Sintaks anotasi baharu membenarkan anotasi dan anotasi kendiri semasa tugasan:

# Standalone annotation
number: int

# Annotation during assignment
primes: List[int] = []

sintaks annotated_assignment_stmt merangkumi sintaks baharu ini, memperkenalkan ":" watak sebagai pembatas.

Selain itu, Python 3.6 memperkenalkan atribut anotasi untuk modul dan kelas. Atribut ini mengandungi anotasi jenis untuk pembolehubah yang ditentukan.

Mengakses Anotasi

Untuk mengakses anotasi, anda boleh menggunakan fungsi get_type_hints daripada modul menaip. Contohnya:

>>> from typing import get_type_hints
>>> primes: List[int] = []
>>> captain: str
>>> get_type_hints(__main__)
{'primes': typing.List[int]}

Contoh

Pertimbangkan contoh yang disediakan dalam soalan:

primes: List[int] = []

Anotasi ini menunjukkan bahawa pembolehubah perdana ialah senarai integer. Sebarang tugasan kepada pembolehubah ini mesti mematuhi jenis ini.

Pembolehubah Kelas dan StarShip

Pembolehubah Statistik dalam kelas StarShip ialah pembolehubah contoh, bukan pembolehubah kelas. ClassVar ialah jenis khas yang menandakan pembolehubah kelas. Pada masa ini, Starship.stats ialah pembolehubah kejadian dengan jenis Dict[str, int].

Penggunaan

Anotasi pembolehubah adalah pilihan dan bertujuan terutamanya untuk digunakan mengikut jenis- alat menyemak. Ia menyediakan cara yang mudah dan berstruktur untuk menentukan jenis metadata, meningkatkan kebolehbacaan kod dan memudahkan pembangunan alatan dan perpustakaan berkaitan jenis tersuai.

Atas ialah kandungan terperinci Bagaimanakah Anotasi Pembolehubah Meningkatkan Sistem Jenis Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn