Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Semak sama ada Pembolehubah Merujuk kepada Fungsi dalam Python?

Bagaimana untuk Semak sama ada Pembolehubah Merujuk kepada Fungsi dalam Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-18 20:04:03415semak imbas

How to Check if a Variable Refers to a Function in Python?

Mengesan Pembolehubah Fungsi dalam Python

Anda mempunyai pembolehubah bernama "x" dan ingin menentukan sama ada ia menunjuk ke fungsi. Semasa menyemak jenis "x" menunjukkan ia adalah fungsi, percubaan untuk menggunakan isinstance(x, function) gagal. Di sinilah callable() berguna.

Python 2.x dan Python 3.2 :

callable(x)

Python 3.x sebelum 3.2:

hasattr(x, '__call__')

Pendekatan sebelumnya seperti jenis.FunctionTypes atau inspect.isfunction mempunyai had. Mereka mengembalikan False untuk fungsi bukan Python, seperti builtin, yang dilaksanakan dalam C.

Daripada menyemak jenis atau muat ke dalam bekas, lebih baik "bertanya" objek jika ia boleh dipanggil oleh mencari atribut panggilan. Ini memastikan pengecaman fungsi yang tepat, tanpa mengira pelaksanaannya.

Atas ialah kandungan terperinci Bagaimana untuk Semak sama ada Pembolehubah Merujuk kepada Fungsi dalam 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