Tampilkan karakter khusus saat menggunakan pernyataan cetak


89

Saya ingin menampilkan karakter escape saat menggunakan pernyataan cetak. Misalnya

a = "Hello\tWorld\nHello World"
print a
Hello   World
Hello World

Saya ingin menampilkan: "Hello \ tWorld \ nHello \ sWorld"

Jawaban:


163

Gunakan repr :

a = "Hello\tWorld\nHello World"
print(repr(a))
# 'Hello\tWorld\nHello World'

Perhatikan bahwa Anda tidak mendapatkan \stempat. Saya harap itu salah ketik ...?

Tetapi jika Anda benar-benar menginginkan \sruang, Anda dapat melakukan ini:

print(repr(a).replace(' ',r'\s'))

1
Python 3 adalah:print(repr(a))
07lodgeT

16

Apakah Anda hanya ingin mencetak string seperti itu, atau Anda ingin itu menjadi representasi internal string? Jika yang terakhir, membuatnya sebagai string mentah dengan awalan dengan 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

Juga, \sbukan karakter pelarian, kecuali dalam ekspresi reguler, dan kemudian masih memiliki arti yang jauh berbeda dari yang Anda gunakan untuk itu.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.