Menentukan Pelbagai Jenis Pulangan dengan Petua Jenis dalam Python
Petua jenis Python membolehkan anda menentukan jenis data yang dijangkakan untuk parameter fungsi dan nilai pulangan . Apabila fungsi boleh mengembalikan berbilang jenis, persoalan timbul tentang cara untuk mewakili ini dengan tepat dalam pembayang jenis.
Jenis Kesatuan (Python 3.10 dan Kemudian)
Dalam Python 3.10 dan versi seterusnya, | operator boleh digunakan untuk mencipta jenis kesatuan. Ini membolehkan notasi ringkas dan jelas untuk berbilang jenis pulangan. Contohnya:
def foo(client_id: str) -> list | bool:
Ini menunjukkan bahawa fungsi foo boleh mengembalikan sama ada senarai atau boolean.
Menaip.Union (Versi Python Terdahulu)
Untuk versi Python yang lebih awal, kelas menaip.Union mesti digunakan:
from typing import Union def foo(client_id: str) -> Union[list, bool]:
Limitation
Adalah penting untuk ambil perhatian bahawa pembayang jenis dalam Python bukanlah dikuatkuasakan semasa runtime. Oleh itu, ia berfungsi sebagai bantuan masa pembangunan dan bukannya mekanisme semakan jenis yang ketat. Fungsi masih boleh mengembalikan jenis yang tidak dijangka, seperti yang ditunjukkan di bawah:
>>> def foo(a: str) -> list: ... return "Works" ... >>> foo(1) 'Works'
Dalam kes ini, walaupun fungsi diberi anotasi untuk mengembalikan senarai, ia mengembalikan rentetan. Walau bagaimanapun, atribut anotasi akan mencerminkan jenis pulangan yang dimaksudkan:
>>> foo.__annotations__ {'return': <class 'list'>, 'a': <class 'str'>}
Rujuk PEP 483 untuk butiran lanjut tentang pembayang jenis dalam Python. Untuk mendapatkan cerapan tambahan, pertimbangkan untuk membaca "Apakah pembayang jenis dalam Python 3.5??" Dengan teknik ini, anda boleh menentukan berbilang jenis pulangan dengan tepat dalam kod Python anda, meningkatkan kebolehbacaan dan kebolehselenggaraannya.
Atas ialah kandungan terperinci Bagaimanakah Anda Menentukan Pelbagai Jenis Pulangan dengan Petua Jenis dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!