Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menentukan Jenis Fungsi dalam Petua Jenis Python?

Bagaimana untuk Menentukan Jenis Fungsi dalam Petua Jenis Python?

Barbara Streisand
Barbara Streisandasal
2024-11-19 09:03:031067semak imbas

How to Specify Function Types in Python Type Hints?

Menentukan Jenis Fungsi dalam Petunjuk Jenis

Dalam Python, pembayang jenis digunakan untuk menyediakan metadata pilihan tentang jenis pembolehubah dan parameter fungsi yang dijangkakan . Walau bagaimanapun, menyatakan pembayang jenis pembolehubah sebagai jenis fungsi mungkin kelihatan tidak jelas.

Penyelesaian

Walaupun tiada "Fungsi Menaip" dalam yang berkaitan PEP 483, anda boleh menentukan pembayang jenis pembolehubah sebagai jenis fungsi menggunakan "menaip. Boleh Dipanggil."

Pelaksanaan

Sintaks untuk menentukan jenis fungsi menggunakan "menaip.Boleh Dipanggil" adalah seperti berikut:

from typing import Callable

def my_function(func: Callable):

Nota: Boleh dipanggil sendiri adalah bersamaan dengan "Boleh Dipanggil[..., Mana-mana]," yang bermaksud ia memerlukan sebarang nombor dan jenis argumen dan mengembalikan nilai apa-apa jenis. Jika ini terlalu tanpa kekangan, anda boleh menentukan lagi jenis senarai argumen input dan jenis pulangan.

Sebagai contoh, untuk fungsi yang mengambil dua integer dan mengembalikan integer:

def sum(a: int, b: int) -> int: return a+b

Anotasi jenis yang sepadan ialah:

Callable[[int, int], int]

Sintaks Umum

Sintaks umum untuk menentukan jenis fungsi menggunakan "typing.Cllable" ialah:

Callable[[ParamType1, ParamType2, ..., ParamTypeN], ReturnType]

Atas ialah kandungan terperinci Bagaimana untuk Menentukan Jenis Fungsi dalam Petua 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