Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Python

Menguasai String Python: Pembuatan, Akses, dan Manipulasi

Previous Page Next Page  

String adalah salah satu tipe yang paling populer dalam Python. Kita dapat membuatnya dengan mengapit karakter dalam tanda kutip. Python memperlakukan tanda kutip tunggal sama seperti tanda kutip ganda. Membuat string sama mudahnya dengan menetapkan nilai ke variabel. Misalnya −

var1 = 'Hello World!' var2 = "Python Programming"

Mengakses Nilai dalam String

Python tidak mendukung tipe karakter; karakter diperlakukan sebagai string dengan panjang satu, sehingga juga dianggap substring.

Untuk mengakses substring, gunakan kurung siku untuk slicing bersama dengan indeks atau indeks untuk mendapatkan substring Anda. Misalnya −

Live Demo
#!/usr/bin/python var1 = 'Hello World!' var2 = "Python Programming" print "var1[0]: ", var1[0] print "var2[1:5]: ", var2[1:5]

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −

var1[0]: H var2[1:5]: ytho

Memperbarui String

Anda dapat "memperbarui" string yang ada dengan (meng)assign variabel ke string lain. Nilai baru dapat terkait dengan nilai sebelumnya atau dengan string yang sama sekali berbeda. Misalnya −

Live Demo
#!/usr/bin/python var1 = 'Hello World!' print "Updated String :- ", var1[:6] + 'Python'

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −

Updated String :- Hello Python

Karakter Escape

Tabel berikut adalah daftar karakter escape atau non-cetak yang dapat direpresentasikan dengan notasi backslash.

Karakter escape akan diinterpretasikan; baik dalam string yang diapit tanda kutip tunggal maupun ganda.

Notasi backslash Karakter heksadesimal Deskripsi
\a 0x07 Bell atau alert
\b 0x08 Backspace
\cx   Control-x
\C-x   Control-x
\e 0x1b Escape
\f 0x0c Formfeed
\M-\C-x   Meta-Control-x
\n 0x0a Newline
\nnn   Notasi oktal, di mana n dalam rentang 0.7
\r 0x0d Carriage return
\s 0x20 Spasi
\t 0x09 Tab
\v 0x0b Vertical tab
\x   Karakter x
\xnn   Notasi heksadesimal, di mana n dalam rentang 0.9, a.f, atau A.F

Operator Khusus String

Asumsikan variabel string a berisi 'Hello' dan variabel b berisi 'Python', maka −

Operator Deskripsi Contoh
+ Concatenation - Menambahkan nilai di kedua sisi operator a + b will give HelloPython
* Repetition - Membuat string baru, menggabungkan beberapa salinan string yang sama a*2 will give -HelloHello
[] Slice - Memberikan karakter dari indeks yang diberikan a[1] will give e
[ : ] Range Slice - Memberikan karakter dari rentang yang diberikan a[1:4] will give ell
in Membership - Mengembalikan benar jika karakter ada dalam string yang diberikan H in a will give 1
not in Membership - Mengembalikan benar jika karakter tidak ada dalam string yang diberikan M not in a will give 1
r/R Raw String - Menyembunyikan arti sebenarnya dari karakter Escape. Sintaks untuk string tepat sama dengan string normal dengan pengecualian operator string tepat, huruf "r," yang mendahului tanda kutip. "r" dapat huruf kecil (r) atau besar (R) dan harus ditempatkan segera mendahului tanda kutip pertama. print r'\n' prints \n and print R'\n'prints \n
% Format - Melakukan pemformatan string See at next section

Operator Pemformatan String

Salah satu fitur keren Python adalah operator pemformatan string %. Operator ini unik untuk string dan menggantikan kekurangan fungsi dari keluarga printf() dari C. Berikut adalah contoh sederhana −

Live Demo
#!/usr/bin/python print "My name is %s and weight is %d kg!" % ('Zara', 21)

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −

My name is Zara and weight is 21 kg!

Berikut adalah daftar lengkap simbol yang dapat digunakan bersama dengan % −

Format Symbol Conversion
%c character
%s string conversion via str() prior to formatting
%i signed decimal integer
%d signed decimal integer
%u unsigned decimal integer
%o octal integer
%x hexadecimal integer (lowercase letters)
%X hexadecimal integer (UPPERcase letters)
%e exponential notation (with lowercase 'e')
%E exponential notation (with UPPERcase 'E')
%f floating point real number
%g the shorter of %f and %e
%G the shorter of %f and %E

Simbol dan fungsionalitas yang didukung lainnya tercantum dalam tabel berikut −

Symbol Functionality
* argument specifies width or precision
- left justification
+ display the sign
<sp> leave a blank space before a positive number
# add the octal leading zero ( '0' ) or hexadecimal leading '0x' or '0X', depending on whether 'x' or 'X' were used.
0 pad from left with zeros (instead of spaces)
% '%%' leaves you with a single literal '%'
(var) mapping variable (dictionary arguments)
m.n. m is the minimum total width and n is the number of digits to display after the decimal point (if appl.)

Triple Quotes

Triple quotes Python membantu dengan mengizinkan string melintasi beberapa baris, termasuk NEWLINE, TAB, dan karakter khusus lainnya.

Sintaks untuk triple quotes terdiri dari tiga tanda kutip tunggal atau ganda berurutan.

Live Demo
#!/usr/bin/python para_str = """this is a long string that is made up of several lines and non-printable characters such as TAB ( \t ) and they will show up that way when displayed. NEWLINEs within the string, whether explicitly given like this within the brackets [ \n ], or just a NEWLINE within the variable assignment will also show up. """ print para_str

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut. Perhatikan bagaimana setiap karakter khusus telah dikonversi ke bentuk cetaknya, hingga NEWLINE terakhir di akhir string antara "up." dan tanda kutip triple penutup. Juga perhatikan bahwa NEWLINE terjadi baik dengan carriage return eksplisit di akhir baris atau kode escapenya (\n) −

this is a long string that is made up of several lines and non-printable characters such as TAB ( ) and they will show up that way when displayed. NEWLINEs within the string, whether explicitly given like this within the brackets [ ], or just a NEWLINE within the variable assignment will also show up.

Raw string tidak memperlakukan backslash sebagai karakter khusus sama sekali. Setiap karakter yang Anda masukkan ke dalam raw string tetap seperti yang Anda tulis −

Live Demo
#!/usr/bin/python print 'C:\\nowhere'

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −

C:\nowhere

Sekarang mari kita gunakan raw string. Kita akan menempatkan ekspresi dalam r'expression' sebagai berikut −

Live Demo
#!/usr/bin/python print r'C:\\nowhere'

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −

C:\\nowhere

Unicode String

String normal dalam Python disimpan secara internal sebagai ASCII 8-bit, sementara string Unicode disimpan sebagai Unicode 16-bit. Ini memungkinkan himpunan karakter yang lebih beragam, termasuk karakter khusus dari sebagian besar bahasa di dunia. Saya akan membatasi pembahasan string Unicode pada hal berikut −

Live Demo
#!/usr/bin/python print u'Hello, world!'

Ketika kode di atas dieksekusi, hasilnya adalah sebagai berikut −

Hello, world!

Seperti yang Anda lihat, string Unicode menggunakan awalan u, sama seperti raw string menggunakan awalan r.

Metode String Bawaan

Python menyertakan metode bawaan berikut untuk memanipulasi string −

Sr.No. Metode dengan Deskripsi
1 capitalize()

Mengkapitalkan huruf pertama string

2 center(width, fillchar)

Mengembalikan string dengan spasi padding dengan string asli diarahkan ke tengah hingga total width kolom.

3 count(str, beg= 0,end=len(string))

Menghitung berapa kali str muncul dalam string atau substring dari string jika indeks awal beg dan indeks akhir end diberikan.

4 decode(encoding='UTF-8',errors='strict')

Mendekode string menggunakan codec yang terdaftar untuk encoding. encoding default ke default string encoding.

5 encode(encoding='UTF-8',errors='strict')

Mengembalikan versi string yang diencode; jika error, default adalah melemparkan ValueError kecuali errors diberikan dengan 'ignore' atau 'replace'.

6 endswith(suffix, beg=0, end=len(string))

Menentukan jika string atau substring dari string (jika indeks awal beg dan indeks akhir end diberikan) diakhiri dengan suffix; mengembalikan benar jika demikian dan salah jika tidak.

7 expandtabs(tabsize=8)

Memperluas tab dalam string menjadi beberapa spasi; default 8 spasi per tab jika tabsize tidak disediakan.

8 find(str, beg=0 end=len(string))

Menentukan jika str muncul dalam string atau substring dari string jika indeks awal beg dan indeks akhir end diberikan mengembalikan indeks jika ditemukan dan -1 jika tidak.

9 index(str, beg=0, end=len(string))

Sama dengan find(), tetapi melemparkan exception jika str tidak ditemukan.

10 isalnum()

Mengembalikan benar jika string memiliki setidaknya 1 karakter dan semua karakter alphanumeric dan salah jika tidak.

11 isalpha()

Mengembalikan benar jika string memiliki setidaknya 1 karakter dan semua karakter alphabetic dan salah jika tidak.

12 isdigit()

Mengembalikan benar jika string hanya berisi digit dan salah jika tidak.

13 islower()

Mengembalikan benar jika string memiliki setidaknya 1 karakter huruf kecil dan semua karakter huruf kecil dan salah jika tidak.

14 isnumeric()

Mengembalikan benar jika string unicode hanya berisi karakter numerik dan salah jika tidak.

15 isspace()

Mengembalikan benar jika string hanya berisi karakter spasi putih dan salah jika tidak.

16 istitle()

Mengembalikan benar jika string secara tepat "titlecased" dan salah jika tidak.

17 isupper()

Mengembalikan benar jika string memiliki setidaknya satu karakter huruf besar dan semua karakter huruf besar dan salah jika tidak.

18 join(seq)

Menggabungkan (mengkonsentrasikan) representasi string elemen dalam urutan seq menjadi string, dengan separator string.

19 len(string)

Mengembalikan panjang string

20 ljust(width[, fillchar])

Mengembalikan string dengan spasi padding dengan string asli diarahkan ke kiri hingga total width kolom.

21 lower()

Mengonversi semua huruf besar dalam string menjadi huruf kecil.

22 lstrip()

Menghapus semua spasi di awal string.

23 maketrans()

Mengembalikan tabel terjemahan untuk digunakan dalam fungsi translate.

24 max(str)

Mengembalikan karakter alfabet terdekat dari string str.

25 min(str)

Mengembalikan karakter alfabet terendah dari string str.

26 replace(old, new [, max])

Menggantikan semua kemunculan old dalam string dengan new atau paling banyak max kemunculan jika max diberikan.

27 rfind(str, beg=0,end=len(string))

Sama dengan find(), tetapi mencari mundur dalam string.

28 rindex( str, beg=0, end=len(string))

Sama dengan index(), tetapi mencari mundur dalam string.

29 rjust(width,[, fillchar])

Mengembalikan string dengan spasi padding dengan string asli diarahkan ke kanan hingga total width kolom.

30 rstrip()

Menghapus semua spasi di akhir string.

31 split(str="", num=string.count(str))

Membagi string berdasarkan delimiter str (spasi jika tidak disediakan) dan mengembalikan list substring; dibagi menjadi paling banyak num substring jika diberikan.

32 splitlines( num=string.count('\n'))

Membagi string pada semua (atau num) NEWLINE dan mengembalikan list setiap baris dengan NEWLINE dihapus.

33 startswith(str, beg=0,end=len(string))

Menentukan jika string atau substring dari string (jika indeks awal beg dan indeks akhir end diberikan) dimulai dengan substring str; mengembalikan benar jika demikian dan salah jika tidak.

34 strip([chars])

Melakukan lstrip() dan rstrip() pada string.

35 swapcase()

Membalik huruf besar kecil untuk semua huruf dalam string.

36 title()

Mengembalikan versi "titlecased" dari string, yaitu semua kata dimulai dengan huruf besar dan sisanya huruf kecil.

37 translate(table, deletechars="")

Menerjemahkan string sesuai tabel terjemahan str(256 chars), menghapus yang ada dalam del string.

38 upper()

Mengonversi huruf kecil dalam string menjadi huruf besar.

39 zfill (width)

Mengembalikan string asli dengan padding nol di kiri hingga total width karakter; dimaksudkan untuk angka, zfill() mempertahankan tanda yang diberikan (kurang satu nol).

40 isdecimal()

Mengembalikan benar jika string unicode hanya berisi karakter desimal dan salah jika tidak.


Python

  1. Menguasai String C#: Dasar, Operasi, dan Teknik Lanjutan
  2. Menguasai Operator Python: Panduan Komprehensif
  3. Menguasai Kamus Python: Pembuatan, Manipulasi, dan Teknik Lanjutan
  4. Menguasai Operasi String Python: Replace, Join, Split, Reverse, dan Konversi Huruf Besar/Kecil
  5. Menguasai Metode strip() Python: Panduan Lengkap & Contoh Praktis
  6. Menguasai str.count() Python: Cara Menghitung Karakter & Substring dengan Contoh
  7. Menguasai String `format()` Python dengan Contoh Jelas
  8. len() Python: Panduan Praktis untuk Mengukur Panjang Objek
  9. Menguasai Metode String.find() Python: Sintaks, Contoh & Alternatif
  10. Menguasai enumerate() Python: Loop dengan Indeks untuk List, Tuple, String, dan Dictionary