Enigma Python's eval() Didedahkan
Dalam bidang pengaturcaraan Python, menghadapi serpihan kod seperti eval(input('blah' )) boleh menimbulkan persoalan. Mari kita mendalami tujuan dan implikasi fungsi misteri ini.
Apakah Perjanjian dengan eval()?
Fungsi eval() memberikan program Python keupayaan untuk melaksanakan Kod Python dari dalam diri mereka sendiri. Ia mentafsir inputnya sebagai ungkapan Python dan mengembalikan hasil penilaian.
Bagaimana Ia Mengubah Input?
Apabila digunakan bersama dengan fungsi input() , eval() mengubah input pengguna daripada rentetan semata-mata kepada pernyataan Python boleh laku. Sebagai contoh, pertimbangkan kod berikut:
x = eval(input('Enter a number: '))
Dengan menggunakan eval(), input pengguna, yang pada mulanya akan menjadi rentetan yang mewakili nombor, ditukar kepada nilai integer sebenar yang disimpan dalam pembolehubah x. Ini membolehkan operasi matematik lanjut atau perbandingan yang melibatkan x.
Contoh
Untuk menggambarkan cara ini berfungsi, mari analisa coretan kod Python berikut:
>>> x = 1 >>> eval('x + 1') 2 >>> eval('x') 1
Dalam shell interaktif ini, kita mula-mula mencipta pembolehubah x dengan nilai 1. Yang berikutnya eval() panggilan menunjukkan keupayaan fungsi untuk melaksanakan kod Python dalam dirinya sendiri. Ia menilai ungkapan 'x 1', menghasilkan output 2. Tambahan pula, ia juga boleh menilai pembolehubah, seperti yang ditunjukkan oleh panggilan eval() kedua yang mengembalikan nilai 'x'.
Atas ialah kandungan terperinci Apakah Kegunaan dan Risiko Fungsi `eval()` Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!