For AI agents: use /llms.txt for the Nakafa content index.
Escape sequence diawali backslash (\) yang diikuti satu atau beberapa karakter dan ditafsirkan secara khusus oleh Python. Notasi ini memungkinkan literal string memuat karakter seperti baris baru atau tanda kutip yang seharusnya menutup literal tersebut.
Backslash mengubah cara Python membaca karakter setelahnya. Backslash itu merupakan bagian dari notasi dalam kode sumber, sedangkan string hasilnya berisi karakter yang diwakili notasi tersebut.
Jika karakter kutip yang sama dipakai sebagai pembatas string dan muncul di dalamnya, kutip yang tidak di-escape akan menutup literal terlalu awal. Karakter setelahnya lalu dibaca sebagai kode Python yang tidak valid.
# Masalah: tanda kutip tunggal di dalam string
>>> 'I'm Bob.'
SyntaxError: invalid syntax
# Solusi: gunakan tanda kutip ganda untuk string
>>> "I'm Bob."
"I'm Bob."
# Masalah: kedua jenis tanda kutip dalam string
>>> 'He said: "I'm Bob."'
SyntaxError: invalid syntaxKetika kamu menggunakan tanda kutip tunggal untuk membuat string, tetapi di dalam string tersebut juga ada tanda kutip tunggal, Python akan menganggap tanda kutip kedua sebagai penutup string. Akibatnya, bagian setelahnya dianggap sebagai kode yang tidak valid.
Escape sequence memberikan solusi dengan menggunakan backslash (\) sebelum karakter yang ingin kamu sisipkan. Backslash memberitahu komputer bahwa karakter berikutnya harus diperlakukan sebagai karakter biasa, bukan sebagai karakter khusus.
# Menggunakan escape sequence untuk tanda kutip tunggal
>>> 'He said: "I\'m Bob."'
'He said: "I\'m Bob."'
# Ketika di-print, escape sequence diinterpretasikan
>>> print('He said: "I\'m Bob."')
He said: "I'm Bob."Dalam contoh ini, \' memberitahu Python bahwa tanda kutip tunggal tersebut adalah bagian dari teks, bukan penanda akhir string.
Karena backslash memiliki makna khusus dalam escape sequence, bagaimana cara menampilkan backslash itu sendiri? Kamu perlu menggunakan dua backslash berturut-turut.
# Menampilkan backslash dalam string
>>> print('Escape sequence untuk baris baru adalah \\n.')
Escape sequence untuk baris baru adalah \n.
# Menggunakan raw string (prefix r)
>>> text = r'Escape sequence untuk baris baru adalah \n.'
>>> text
'Escape sequence untuk baris baru adalah \\n.'
>>> print(text)
Escape sequence untuk baris baru adalah \n.Prefix raw string seperti r mempertahankan sebagian besar backslash tanpa menafsirkannya sebagai escape sequence. Tanda kutip tetap harus mengikuti aturan pembatas literal, dan raw string tidak dapat diakhiri dengan jumlah backslash yang ganjil.
Berikut adalah escape sequence yang sering digunakan dalam pemrograman:
| Escape Sequence | Makna |
|---|---|
\' | Tanda kutip tunggal (') |
\" | Tanda kutip ganda (") |
\n | Baris baru (newline) |
\r | Carriage return |
\t | Tab horizontal |
\b | Backspace |
\\ | Karakter backslash () |
\uxxxx | Karakter Unicode dengan code point heksadesimal empat digit |
\Uxxxxxxxx | Karakter Unicode dengan code point heksadesimal delapan digit |
\N{name} | Karakter Unicode berdasarkan nama terdaftarnya |
\xhh | Karakter dengan nilai heksadesimal dua digit |
Setiap escape sequence memiliki fungsi khusus untuk mengontrol tampilan atau format teks dalam program.
Dalam str.format() dan f-string, kurung kurawal membatasi replacement field. Kurung kurawal ganda meng-escape karakter itu dari sintaks pemformatan. Mekanisme ini berbeda dari escape sequence dengan backslash dalam literal string.
# Kurung kurawal yang di-escape dalam format string: {{ }}
>>> '{{}}'.format('text')
'{}'
# Menampilkan teks dengan kurung kurawal
>>> '{{{}}}'.format('text')
'{text}'Tulis {{ untuk menghasilkan { dan }} untuk menghasilkan }. Pada '{{{}}}', pasangan kurung terluar menjadi karakter literal, sedangkan {} di tengah tetap menjadi replacement field.
Mari lihat bagaimana escape sequence digunakan dalam situasi nyata untuk membuat output yang rapi dan terformat dengan baik.
# Membuat output terformat dengan tab dan newline
print("Nama\t: John Doe")
print("Umur\t: 25 tahun")
print("Alamat\t: Jakarta\n")
# Menampilkan dialog dengan tanda kutip
print('Dia berkata: "Hari ini cuaca sangat cerah!"')
# Menampilkan path file dengan backslash
print("File tersimpan di: C:\\Users\\Documents\\data.txt")
# Kombinasi berbagai escape sequence
print("Baris pertama\nBaris kedua\t(dengan tab)\nBaris ketiga")Dalam contoh ini, \t membuat kolom yang rapi, \n memisahkan baris, dan \\ menampilkan path file Windows dengan benar.
Hal terpenting adalah membedakan notasi dalam kode sumber dari string yang dihasilkan. \n, misalnya, ditulis dengan dua karakter dalam kode sumber tetapi mewakili satu karakter baris baru di dalam string.