Mengapa Garis Garis Belakang Muncul Dua Kali
Apabila menyimpan rentetan dengan garis miring belakang dalam Python, anda mungkin perasan bahawa ia kelihatan dua kali ganda. Ini berlaku apabila menggunakan kaedah __repr__() untuk mendapatkan semula perwakilan rentetan. Dengan menggunakan print() sebaliknya, anda akan melihat bahawa garis miring ke belakang kekal tunggal, seperti yang dimaksudkan:
>>> my_string = "why\does\it\happen?" >>> my_string 'why\does\it\happen?' >>> print(my_string) why\does\it\happen?
Walaupun penggandaan dipaparkan dalam perwakilan, rentetan itu sendiri hanya mengandungi garis miring ke belakang tunggal, seperti yang ditunjukkan oleh panjangnya :
>>> 'a\b' 'a\b' >>> len('a\b') 3
Untuk mendapatkan semula perwakilan standard rentetan, gunakan repr() fungsi:
>>> print(repr(my_string)) 'why\does\it\happen?'
Python menggambarkan garis miring ke belakang sebagai dalam rentetan kerana garis miring ke belakang bertindak sebagai watak melarikan diri. Sebagai contoh, n menandakan baris baharu, dan t mewakili tab. Walau bagaimanapun, ini boleh mengakibatkan tingkah laku yang tidak disengajakan:
>>> print("this\text\is\not\what\it\seems") this ext\is ot\what\it\seems
Untuk menentukan rupa literal garis miring ke belakang, gandakannya:
>>> print("this\text\is\what\you\need") this\text\is\what\you\need
Kesimpulannya, apabila mendapatkan semula perwakilan rentetan, Python terlepas semua garis miring ke belakang untuk tujuan keselamatan. Walau bagaimanapun, rentetan sebenar hanya memegang garis miring ke belakang tunggal. Untuk mendapatkan maklumat lanjut tentang literal rentetan Python, rujuk dokumentasi rasmi.
Atas ialah kandungan terperinci Mengapakah Sebatan Terbalik Digandakan Apabila Memaparkan Rentetan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!