Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Memanggil Fungsi dalam Python Secara Dinamik Menggunakan String?

Bagaimanakah Saya Boleh Memanggil Fungsi dalam Python Secara Dinamik Menggunakan String?

Linda Hamilton
Linda Hamiltonasal
2024-12-22 05:17:09572semak imbas

How Can I Dynamically Call a Function in Python Using a String?

Memanggil Fungsi Secara Dinamik Menggunakan Rentetan

Memanggil fungsi menggunakan rentetan yang mengandungi nama fungsi boleh berguna dalam senario tertentu. Begini cara anda boleh mencapai ini:

Menggunakan getattr()

Fungsi getattr() membolehkan anda mendapatkan semula atribut secara dinamik. Untuk memanggil fungsi menggunakan rentetan, anda boleh menggunakan pendekatan berikut:

import foo
func_name = "bar"
bar = getattr(foo, func_name)
result = bar()

Dalam contoh ini, kami mengimport modul foo, dan kemudian kami menggunakan func_name untuk mendapatkan semula rujukan kepada fungsi bar menggunakan getattr( ). Akhir sekali, kita boleh memanggil fungsi dan menyimpan hasilnya dalam hasil.

Memahami getattr()

getattr() memerlukan dua hujah:

  • Argumen pertama ialah objek contoh atribut sedang diambil daripada (di sini, foo modul).
  • Argumen kedua ialah nama rentetan atribut yang anda mahu dapatkan (di sini, "bar").

getattr() boleh digunakan untuk mengakses bukan sahaja fungsi tetapi juga kaedah terikat contoh kelas, kaedah peringkat modul dan juga kaedah kelas.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memanggil Fungsi dalam Python Secara Dinamik Menggunakan String?. 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