Menggunakan print "a\tb"memberi saya a (8 spaces)bdi cmdatas Windows. Mengapa mencetak 8 spasi, bukan karakter tab.
Iulian Onofrei
Apa lagi yang Anda harapkan?
Simone
8
Untuk menampilkana (tab character)b
Iulian Onofrei
@IulianOnofrei Karakter tab adalah karakter non-cetak, juga dikenal sebagai spasi. Anda tidak melihat apa pun saat menekan tombol Tab. Ini hanya memindahkan teks dengan jumlah spasi default. Mungkin Anda bisa menggambar karakter apa yang ingin Anda tampilkan. Apakah ->?
Rick Henderson
4
@RickHenderson Itu tidak benar, karakter tab bukan hanya jumlah spasi. Mungkin Editor Anda dikonfigurasi untuk menyisipkan spasi pada tab yang ditekan. "" adalah tab "" adalah spasi. Anda mungkin tidak melihat perbedaannya di sini, tetapi buka Word / Libre dan Anda akan melihat perbedaannya.
Sativa
27
Manual referensi Python mencakup beberapa literal string yang dapat digunakan dalam sebuah string. Urutan karakter khusus ini diganti dengan makna yang diinginkan dari urutan escape.
Berikut adalah tabel dari beberapa escape sequence yang lebih berguna dan deskripsi keluaran darinya.
EscapeSequenceMeaning
\t Tab
\\ Inserts a back slash (\)
\' Inserts a single quote (')
\" Inserts a double quote (")
\n Inserts a ASCII Linefeed (a new line)
Contoh Dasar
Jika saya ingin mencetak beberapa titik data yang dipisahkan oleh ruang tab, saya dapat mencetak string ini.
DataString="0\t12\t24"print(DataString)
Kembali
01224
Contoh untuk Daftar
Berikut adalah contoh lain di mana kami mencetak item dari daftar dan kami ingin memisahkan item dengan TAB.
Perhatikan bahwa string mentah (string yang menyertakan awalan "r"), literal string akan diabaikan. Ini memungkinkan rangkaian karakter khusus ini untuk dimasukkan ke dalam string tanpa diubah.
DataString= r"0\t12\t24"print(DataString)
Kembali
0\t12\t24
Yang mungkin merupakan hasil yang tidak diinginkan
Panjang String
Perlu juga dicatat bahwa string literal hanya memiliki satu karakter.
Karena tidak disebutkan dalam jawaban apa pun, jika Anda ingin meratakan dan memberi spasi pada teks Anda, Anda dapat menggunakan fitur format string. (di atas python 2.5) Tentu saja \tsebenarnya token TAB sedangkan metode yang dijelaskan menghasilkan spasi.
bagaimana cara memberi karakter tab untuk mencetak elemen array 3 dimensi sebagai 0 12 24 sebagai 3 baris?
priya raj
Ditambahkan ke jawaban
pengguna1767754
0
Berikut adalah beberapa cara Python 3 yang lebih eksotis untuk mendapatkan "hello" TAB "alex" (diuji dengan Python 3.6.10):
"hello\N{TAB}alex"
"hello\N{tab}alex"
"hello\N{TaB}alex"
"hello\N{HT}alex"
"hello\N{CHARACTER TABULATION}alex"
"hello\N{HORIZONTAL TABULATION}alex"
"hello\x09alex"
"hello\u0009alex"
"hello\U00000009alex"
Sebenarnya, alih-alih menggunakan escape sequence, dimungkinkan untuk menyisipkan simbol tab langsung ke dalam string literal. Berikut adalah kode dengan karakter tabulasi untuk disalin dan dicoba:
"hello alex"
Jika tab dalam string di atas tidak akan hilang di mana pun selama menyalin string maka "print (repr (<string from above>)" harus mencetak 'hello \ talex'.
Jawaban:
Ini kodenya:
Bagian
\t
dalam string adalah escape sequence untuk tabulasi horizontal.sumber
print "a\tb"
memberi sayaa (8 spaces)b
dicmd
atasWindows
. Mengapa mencetak 8 spasi, bukan karakter tab.a (tab character)b
Manual referensi Python mencakup beberapa literal string yang dapat digunakan dalam sebuah string. Urutan karakter khusus ini diganti dengan makna yang diinginkan dari urutan escape.
Berikut adalah tabel dari beberapa escape sequence yang lebih berguna dan deskripsi keluaran darinya.
Contoh Dasar
Jika saya ingin mencetak beberapa titik data yang dipisahkan oleh ruang tab, saya dapat mencetak string ini.
Kembali
Contoh untuk Daftar
Berikut adalah contoh lain di mana kami mencetak item dari daftar dan kami ingin memisahkan item dengan TAB.
Kembali
String Mentah
Perhatikan bahwa string mentah (string yang menyertakan awalan "r"), literal string akan diabaikan. Ini memungkinkan rangkaian karakter khusus ini untuk dimasukkan ke dalam string tanpa diubah.
Kembali
Yang mungkin merupakan hasil yang tidak diinginkan
Panjang String
Perlu juga dicatat bahwa string literal hanya memiliki satu karakter.
Kembali
String mentah memiliki panjang 9.
sumber
\t
. Bagaimana saya bisa melakukan ini?Anda dapat menggunakan \ t dalam string literal:
"hello\talex"
sumber
Biasanya
\t
dalam antarmuka baris perintah, yang akan mengubah karakter\t
menjadi karakter tab spasi.Misalnya,
hello\talex
->hello--->alex
.sumber
Karena tidak disebutkan dalam jawaban apa pun, jika Anda ingin meratakan dan memberi spasi pada teks Anda, Anda dapat menggunakan fitur format string. (di atas python 2.5) Tentu saja
\t
sebenarnya token TAB sedangkan metode yang dijelaskan menghasilkan spasi.Contoh:
Contoh lain, rata kiri:
sumber
Berikut adalah beberapa cara Python 3 yang lebih eksotis untuk mendapatkan "hello" TAB "alex" (diuji dengan Python 3.6.10):
"hello\N{TAB}alex"
"hello\N{tab}alex"
"hello\N{TaB}alex"
"hello\N{HT}alex"
"hello\N{CHARACTER TABULATION}alex"
"hello\N{HORIZONTAL TABULATION}alex"
"hello\x09alex"
"hello\u0009alex"
"hello\U00000009alex"
Sebenarnya, alih-alih menggunakan escape sequence, dimungkinkan untuk menyisipkan simbol tab langsung ke dalam string literal. Berikut adalah kode dengan karakter tabulasi untuk disalin dan dicoba:
"hello alex"
Jika tab dalam string di atas tidak akan hilang di mana pun selama menyalin string maka "print (repr (<string from above>)" harus mencetak 'hello \ talex'.
Lihat dokumentasi Python masing-masing untuk referensi.
sumber