Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Fungsi `repr()` Python Berbeza daripada `str()`, dan Mengapa Petikan Berganda Ditambah pada Outputnya?

Bagaimanakah Fungsi `repr()` Python Berbeza daripada `str()`, dan Mengapa Petikan Berganda Ditambah pada Outputnya?

Susan Sarandon
Lepaskan: 2024-11-29 10:37:10
asal
514 orang telah melayarinya

How Does Python's `repr()` Function Differ from `str()`, and Why Are Double Quotes Added to its Output?

Memahami Fungsi repr( ) dalam Python

repr( ) menyediakan perwakilan rentetan yang boleh dinilai bagi objek dalam Python. Ia mengembalikan rentetan yang boleh dinilai menggunakan fungsi eval( ), menghasilkan objek yang sama.

Soalan dan Jawapan:

1. Mengapakah petikan berganda ditambah pada output repr(x)?

repr( ) merangkumi perwakilan rentetan objek dengan petikan berganda untuk mewakili literal rentetan yang boleh dinilai oleh eval( ). Sebaliknya, str( ) tidak menambah petikan kerana ia mengembalikan perwakilan rentetan tanpa menilainya.

2. Mengapakah eval("'foo'") mengembalikan 'foo' dan bukannya objek x yang pada mulanya ditetapkan kepadanya?

eval( ) mengambil rentetan sebagai input dan menilainya. Apabila anda memanggil eval("'foo'"), ia mentafsir kandungan rentetan dan mengembalikan 'foo' secara langsung, memintas tugasan objek yang telah dilakukan dengan x. Untuk menilai objek itu sendiri, anda perlu menghantar x sebagai hujah kepada eval( ).

Cerapan Tambahan:

  • repr( ) berguna untuk menyediakan perwakilan rentetan yang boleh digunakan untuk membina semula objek kemudian.
  • Fungsi eval( ) biasanya digunakan untuk melaksanakan kod secara dinamik pada masa jalan.
  • str( ) hanya mengembalikan perwakilan rentetan objek tanpa menilainya.
  • Objek dalam Python mempunyai kaedah ajaib seperti repr dan __str__, yang menyesuaikan rentetan dan perwakilan objek.

Atas ialah kandungan terperinci Bagaimanakah Fungsi `repr()` Python Berbeza daripada `str()`, dan Mengapa Petikan Berganda Ditambah pada Outputnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan