Fungsi Memanggil melalui Nama Rentetan
Bayangkan anda mempunyai senario di mana anda perlu memanggil fungsi secara dinamik menggunakan namanya yang disimpan dalam rentetan. Ini mungkin timbul dalam senario yang melibatkan persekitaran yang sangat dinamik atau pengaturcaraan meta. Begini cara untuk mendekati ini dalam Python:
Teknik utama terletak pada fungsi getattr Python. Ia membolehkan anda mendapatkan semula atribut atau kaedah daripada objek yang diberi namanya sebagai rentetan. Untuk memanggil fungsi modul secara dinamik:
import foo func_name = "bar" bar = getattr(foo, func_name) result = bar()
Dalam contoh ini, kami menganggap modul foo dengan bar fungsi. getattr(foo, 'bar') mengambil rujukan fungsi bar. Invoking result = bar() melaksanakan fungsi, menyebabkan outputnya disimpan dalam hasil.
Terutamanya, getattr boleh digunakan bukan sahaja untuk fungsi peringkat modul tetapi juga untuk contoh kelas, kaedah kelas dan banyak lagi. Fleksibilitinya menjadikannya alat penting untuk menavigasi ciri dinamik Python.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memanggil Fungsi Python Secara Dinamik Menggunakan Namanya sebagai Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!