Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Meniru Fungsi padat() dan ekstrak() PHP dalam Python?
Rakan Sejawat PHP() dan Extract() dalam Python
Fungsi compact() PHP memasang jadual hash dengan nilai yang sepadan dengan jadual simbol yang ditentukan names, dan extract() membalikkan proses ini. Walaupun Python menyediakan locals(), globals(), dan vars(), ia tidak mempunyai mekanisme terbina dalam untuk mengasingkan sebahagian daripada nilai ini.
Melaksanakan Compact()
Jika mahu, anda boleh melaksanakan Python yang setara dengan compact() seperti berikut:
<code class="python">import inspect def compact(*names): caller = inspect.stack()[1][0] # caller of compact() vars = {} for n in names: if n in caller.f_locals: vars[n] = caller.f_locals[n] elif n in caller.f_globals: vars[n] = caller.f_globals[n] return vars</code>
Extract() dalam Python
Mencuba untuk mencipta ekstrak () fungsi dalam Python tidak digalakkan. Jurubahasa Python terdahulu membenarkan penyelesaian, tetapi dalam versi moden, ia tidak lagi berfungsi.
Perspektif Python
Menggunakan compact() dan extract() secara amnya tidak digalakkan dalam Python, kerana ia bertentangan dengan prinsip Pythonic kejelasan, kesederhanaan dan kejelasan. Walau bagaimanapun, fungsi ini mungkin mempunyai aplikasi khusus dalam penyahpepijatan, analisis bedah siasat atau penciptaan pembolehubah dinamik.
Atas ialah kandungan terperinci Bagaimana untuk Meniru Fungsi padat() dan ekstrak() PHP dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!