Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Python Menunjukkan Garis Segaris Belakang Berganda dalam Perwakilan Rentetan?
Perwakilan Berganda Garis Sentak Belakang dalam Rentetan Python
Apabila menghadapi urutan garis serik terbalik () dalam rentetan Python, adalah perkara biasa untuk melihat kesan pendua . Tingkah laku ini berpunca daripada cara Python mewakili rentetan secara dalaman.
Perwakilan berbanding Kandungan Sebenar
Apabila anda menetapkan rentetan kepada pembolehubah (cth., rentetan_my), pembolehubah akan kekal perwakilan dalaman rentetan itu. Perwakilan ini dibuat menggunakan kaedah __repr__(). Walau bagaimanapun, apabila anda mencetak rentetan (cth., print(my_string)), kandungan sebenar rentetan itu, tanpa sebarang garis miring ke belakang pendua, dipaparkan.
Sebagai contoh, pertimbangkan rentetan:
my_string = "why\does\it\happen?"
Kaedah repr() menukar rentetan ini kepada:
'why\does\it\happen?'
Perhatikan garis miring ke belakang berganda dalam perwakilan. Walau bagaimanapun, apabila mencetak my_string, anda akan mendapat:
why\does\it\happen?
Mengapa Penduaan?
Python menggunakan garis miring ke belakang sebagai aksara melarikan diri. Sebagai contoh, n mewakili baris baharu dan t mewakili tab. Untuk membezakan antara jujukan melarikan diri yang dimaksudkan dan garis miring ke belakang literal, Python melarikan diri dari sebarang garis miring ke belakang yang digunakan dalam perwakilan rentetan dengan garis miring ke belakang yang lain.
Menyelesaikan Kekeliruan
Untuk mendapatkan yang sebenar kandungan rentetan, termasuk garis miring ke belakang tunggal, gunakan fungsi print(). Jika anda memerlukan perwakilan rentetan, anda boleh mengaksesnya menggunakan fungsi terbina dalam repr():
print(my_string) # why\does\it\happen? print(repr(my_string)) # 'why\does\it\happen?'
Escaping Backslashes
Jika anda berhasrat untuk menggunakan garis miring ke belakang literal dalam rentetan, anda mesti melepaskannya dengan garis miring ke belakang yang lain. Ini menghalang Python daripada mentafsir garis miring ke belakang sebagai watak melarikan diri. Contohnya:
"this\text\is\what\you\need" # Produces: this\text\is\what\you\need
Atas ialah kandungan terperinci Mengapa Python Menunjukkan Garis Segaris Belakang Berganda dalam Perwakilan Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!