ฉันต้องการแสดงอักขระหลีกเมื่อใช้คำสั่งพิมพ์ เช่น
a = "Hello\tWorld\nHello World"
print a
Hello World
Hello World
ฉันต้องการให้แสดง: "สวัสดี \ tWorld \ nHello \ sWorld"
ฉันต้องการแสดงอักขระหลีกเมื่อใช้คำสั่งพิมพ์ เช่น
a = "Hello\tWorld\nHello World"
print a
Hello World
Hello World
ฉันต้องการให้แสดง: "สวัสดี \ tWorld \ nHello \ sWorld"
คำตอบ:
ใช้repr :
a = "Hello\tWorld\nHello World"
print(repr(a))
# 'Hello\tWorld\nHello World'
โปรดทราบว่าคุณไม่ได้รับ\s
ช่องว่าง หวังว่าคงพิมพ์ผิดนะ ... ?
แต่ถ้าคุณต้องการ\s
เว้นวรรคจริงๆคุณสามารถทำได้:
print(repr(a).replace(' ',r'\s'))
คุณเพียงต้องการพิมพ์สตริงด้วยวิธีนั้นหรือคุณต้องการให้เป็นตัวแทนภายในของสตริง? ถ้าหลังสร้างมันขึ้นมาเป็นสตริงดิบโดย prefixing ด้วย:r
r"Hello\tWorld\nHello World"
>>> a = r"Hello\tWorld\nHello World"
>>> a # in the interpreter, this calls repr()
'Hello\\tWorld\\nHello World'
>>> print a
Hello\tWorld\nHello World
นอกจากนี้\s
ไม่ใช่อักขระหลีกยกเว้นในนิพจน์ทั่วไปและยังมีความหมายที่แตกต่างจากที่คุณใช้อยู่มาก
print(repr(a))