Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapakah Sebatan Terbalik Digandakan Apabila Memaparkan Rentetan Python?

Mengapakah Sebatan Terbalik Digandakan Apabila Memaparkan Rentetan Python?

Mary-Kate Olsen
Lepaskan: 2024-12-30 15:14:19
asal
996 orang telah melayarinya

Why are Backslashes Doubled When Displaying Python Strings?

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?
Salin selepas log masuk

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
Salin selepas log masuk

Untuk mendapatkan semula perwakilan standard rentetan, gunakan repr() fungsi:

>>> print(repr(my_string))
'why\does\it\happen?'
Salin selepas log masuk

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
Salin selepas log masuk

Untuk menentukan rupa literal garis miring ke belakang, gandakannya:

>>> print("this\text\is\what\you\need")
this\text\is\what\you\need
Salin selepas log masuk

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!

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