Fungsi Memanggil Secara Dinamik Menggunakan Nama Rentetan
Dalam Python, kita sering menghadapi situasi di mana kita perlu memanggil fungsi secara dinamik, terutamanya apabila bekerja dengan kod modular atau fungsi yang dihasilkan secara dinamik. Satu cara untuk mencapai ini adalah dengan menggunakan rentetan yang memegang nama fungsi. Sebagai contoh, kita mungkin mempunyai modul bernama foo dengan fungsi bernama bar yang ingin kita panggil.
Untuk memanggil fungsi secara dinamik menggunakan nama rentetannya, kita boleh memanfaatkan fungsi getattr seperti berikut:
import foo func_name = "bar" bar = getattr(foo, func_name) result = bar() # calls foo.bar()
Fungsi getattr mendapatkan semula atribut objek yang diberi namanya sebagai rentetan. Dalam kes ini, ia mendapatkan semula fungsi bar daripada modul foo. Kami kemudiannya boleh menggunakan fungsi menggunakan rujukan (bar) yang diperoleh semula, yang pada asasnya memanggil foo.bar().
Pendekatan ini memberikan kefleksibelan apabila berurusan dengan nama fungsi dinamik atau tidak diketahui, membolehkan kami memanggil fungsi pada masa jalankan berdasarkan pada nama rentetan yang diberikan. Ia biasanya digunakan dalam senario seperti melaksanakan penghantaran kaedah, menyesuaikan tingkah laku berdasarkan rentetan atau memuatkan modul secara dinamik dan memanggil fungsinya.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memanggil Fungsi Python Secara Dinamik Menggunakan Nama Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!