Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Menentukan Jenis Fungsi dalam Anotasi Python Menggunakan `typing.Callable`?

Bagaimanakah Saya Boleh Menentukan Jenis Fungsi dalam Anotasi Python Menggunakan `typing.Callable`?

Susan Sarandon
Lepaskan: 2024-11-30 20:55:13
asal
301 orang telah melayarinya

How Can I Specify Function Types in Python Annotations Using `typing.Callable`?

Menentukan Jenis Fungsi dalam Anotasi

Dalam pembayang jenis Python, menyatakan jenis pembolehubah sebagai fungsi adalah penting untuk memastikan ketepatan kod. Walaupun kekurangan penaipan eksplisit. Anotasi jenis fungsi, terdapat penyelesaian menggunakan menaip. Boleh Dipanggil.

Menggunakan menaip.Boleh Dipanggil untuk Jenis Fungsi

Seperti yang ditunjukkan oleh @jonrsharpe keluar, menaip.Boleh Dipanggil membolehkan kami menentukan jenis fungsi dalam anotasi. Contohnya:

from typing import Callable

def my_function(func: Callable):
Salin selepas log masuk

Di sini, fungsi pembolehubah ditandakan jenis sebagai fungsi yang menerima sebarang nombor dan jenis argumen dan mengembalikan nilai apa-apa jenis.

Menentukan Jenis Input dan Pulangan

Untuk anotasi yang lebih tepat, kami boleh menentukan lagi jenis argumen input dan jenis pemulangan fungsi. Pertimbangkan contoh berikut:

def sum(a: int, b: int) -> int:
  return a + b
Salin selepas log masuk

Anotasi yang sepadan ialah:

Callable[[int, int], int]
Salin selepas log masuk

Ini menunjukkan bahawa fungsi menerima dua hujah integer dan mengembalikan integer.

Sintaks Umum

Secara umum, sintaks untuk fungsi jenis anotasi dalam Python ialah:

Callable[[ParamType1, ParamType2, ..., ParamTypeN], ReturnType]
Salin selepas log masuk

Di mana:

  • ParamType1, ..., ParamTypeN ialah jenis argumen input
  • ReturnType ialah jenis daripada nilai pulangan

Dengan memanfaatkan penaipan.Boleh dipanggil, kami boleh menentukan jenis fungsi dengan berkesan dalam anotasi jenis Python, meningkatkan kebolehbacaan kod dan memastikan ketepatan jenis.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Jenis Fungsi dalam Anotasi Python Menggunakan `typing.Callable`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan