Memahami Fungsi repr( ) dalam Python
Fungsi repr( ) Python mengembalikan perwakilan rentetan objek yang boleh dinilai. Ini bermakna rentetan itu boleh digunakan untuk mencipta semula objek yang sama menggunakan eval( ).
Mengapa petikan berganda apabila menggunakan repr( ) pada rentetan?
Apabila repr( ) digunakan pada rentetan, ia mengelilingi rentetan dengan petikan berganda. Ini membantu membezakan rentetan daripada jenis objek lain, seperti integer atau senarai.
Mengapa eval("'foo'") mengembalikan 'foo' dan bukannya x?
Apabila eval( ) dipanggil dengan rentetan, ia mentafsir rentetan itu sebagai ungkapan Python. Jika rentetan mengandungi ungkapan yang sah, ia menilai dan mengembalikan hasilnya. Dalam kes eval("'foo'"), ungkapan ialah rentetan literal, jadi ia menilai kepada rentetan yang sama. Sebaliknya, x ialah pembolehubah yang merujuk kepada rentetan 'foo'. Apabila eval( ) dipanggil dengan x, ia cuba menilai x sebagai ungkapan Python, yang gagal kerana x bukan ungkapan yang sah.
Kaedah __repr__()
repr( ) sebenarnya memanggil kaedah __repr__() objek. Kaedah ini mengembalikan perwakilan rentetan yang boleh dinilai bagi objek.
str( ) lwn. repr( )
Berbeza dengan repr( ), str( ) mengembalikan rentetan perwakilan objek yang sesuai untuk dipamerkan. Ia tidak mengelilingi rentetan dengan petikan berganda dan tidak mengandungi sebarang aksara khas untuk menunjukkan bahawa rentetan itu bertujuan untuk dinilai.
Ringkasan:
Atas ialah kandungan terperinci Bagaimanakah Fungsi `repr()` Python Berfungsi, dan Mengapa Rentetan Dipetik Dua Kali dalam Outputnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!