Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Python Menunjukkan Garis Segaris Belakang Berganda dalam Perwakilan Rentetan?

Mengapa Python Menunjukkan Garis Segaris Belakang Berganda dalam Perwakilan Rentetan?

Susan Sarandon
Susan Sarandonasal
2024-12-17 03:17:24375semak imbas

Why Does Python Show Double Backslashes in String Representations?

Perwakilan Rentetan dengan garis miring ke belakang

Apabila menentukan rentetan dalam Python yang mengandungi garis miring ke belakang, ia mungkin kelihatan seperti garis miring ke belakang muncul dua kali. Pemerhatian ini timbul daripada perwakilan yang dicipta oleh kaedah __repr__().

my_string = "why\does\it\happen?"
my_string

Output:

'why\does\it\happen?'

Rentetan sebenar, walau bagaimanapun, mengandungi hanya garis serong ke belakang tunggal. Untuk mengesahkan ini, cetak rentetan:

print(my_string)

Output:

why\does\it\happen?

Rentetan dengan garis miring ke belakang mempunyai tiga aksara, bukan empat:

'a\b'
len('a\b')

Output:

'a\b'
3

Perwakilan standard rentetan boleh diperoleh menggunakan repr() terbina dalam fungsi:

print(repr(my_string))

Output:

'why\does\it\happen?'

Python mewakili garis miring ke belakang dengan kerana garis miring ke belakang ialah watak melarikan diri. Contohnya, n menandakan baris baharu dan t menandakan tab.

Perwakilan ini melindungi daripada kemungkinan kekeliruan:

print("this\text\is\not\what\it\seems")

Output:

this    ext\is
ot\what\it\seems

Untuk memasukkan secara eksplisit watak sengkang terbalik itu sendiri, melarikan diri dengan watak lain garis serong ke belakang:

print("this\text\is\what\you\need")

Output:

this\text\is\what\you\need

Ringkasnya, perwakilan rentetan dengan garis serong ke belakang termasuk garis serong ke belakang yang terlepas atas sebab keselamatan. Rentetan sebenar, walau bagaimanapun, mengandungi hanya segaris ke belakang tunggal.

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!

Kenyataan:
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