Rumah >pembangunan bahagian belakang >Tutorial Python >Kaedah rentetan python, dengan contoh

Kaedah rentetan python, dengan contoh

Joseph Gordon-Levitt
Joseph Gordon-Levittasal
2025-02-15 11:47:12762semak imbas

Python String Methods, with Examples

Penjelasan terperinci kaedah rentetan python: pemprosesan data teks yang cekap

Python menyediakan kaedah rentetan yang kaya untuk mengendalikan objek rentetan seperti memformat, mencari, dan mengubah suai tanpa mengubah rentetan asal kerana rentetan tidak berubah. Artikel ini akan memperkenalkan beberapa kaedah rentetan python yang biasa digunakan dan menerangkannya dalam kombinasi dengan contoh.

Ciri -ciri rentetan

berdiri adalah sebahagian daripada bahasa pengaturcaraan dan salah satu jenis data yang paling biasa digunakan dalam Python. Mereka adalah urutan aksara Unicode yang tidak berubah yang boleh disertakan dalam tanda petikan tunggal, berganda atau tiga kali ganda. Ketidakhadiran bermakna bahawa sekali rentetan dibuat, ia tidak boleh diubahsuai secara langsung;

Contoh rentetan dalam python:

<code class="language-python">greeting = "Hello, World!"</code>

Nota: Tidak seperti Java atau bahasa pengaturcaraan lain, Python tidak menyokong jenis data watak. Jadi satu watak yang tertutup dalam petikan, seperti 'C', masih rentetan.

Gambaran keseluruhan kaedah rentetan

Sejak rentetan dianggap sebagai urutan dalam python, mereka melaksanakan semua operasi urutan seperti bergabung, kepingan, dan lain -lain:

<code class="language-python">>>> word = 'golden'
>>> len(word)
6
>>> word + 'age'
'goldenage'
>>> 'la' * 3
'lalala'
>>></code>
Di samping operasi urutan, terdapat banyak kaedah tambahan lain yang berkaitan dengan objek rentetan. Kaedah ini boleh digunakan untuk memformat rentetan, mencari substrings dalam rentetan lain, trim ruang, melakukan pemeriksaan tertentu pada rentetan yang diberikan, dan sebagainya.

Harus diperhatikan bahawa kaedah rentetan ini tidak mengubah suai rentetan asal; Kebanyakan kaedah rentetan hanya mengembalikan salinan rentetan yang diubahsuai atau nilai boolean.

Berikut adalah pengenalan terperinci kepada beberapa kaedah rentetan python, disertai dengan contoh.

Kaedah

untuk mengembalikan salinan rentetan yang diubahsuai

  • str.capitalize(): Menukar watak pertama rentetan ke huruf besar dan selebihnya ke huruf kecil.

    Contoh:

    <code class="language-python">>>> "i Enjoy traveling. Do you?".capitalize()
    'I enjoy traveling. do you?'
    >>></code>
  • str.center(width[, fillchar]): Mengembalikan rentetan berpusat, diisi dengan dan fillchar yang diberikan. Jika width kurang daripada atau sama dengan panjang rentetan, rentetan asal dikembalikan. width

    Contoh:

    <code class="language-python">>>> sentence = 'i Enjoy traveling. Do you?'
    >>> len(sentence)
    26
    >>> sentence.center(31)
    '  i Enjoy traveling. Do you? '
    >>> sentence.center(30)
    ' i Enjoy traveling. Do you? '</code>
  • str.encode(encoding='utf-8', errors='strict'): Mengembalikan rentetan yang dikodkan sebagai bait.

    Secara lalai, rentetan yang diserahkan kepada fungsi dikodkan sebagai UTF-8, dan jika ralat berlaku, pengecualian

    akan dibangkitkan. Parameter Kata Kunci UnicodeEncodeError menentukan cara mengendalikan kesilapan, seperti errors melemparkan pengecualian, strict mengabaikan sebarang kesilapan yang dihadapi, dan lain -lain. Terdapat beberapa pilihan pengekodan lain yang tersedia. ignore

    Contoh:

    <code class="language-python">greeting = "Hello, World!"</code>
  • * `str.format ( args, kwargs)` : Mengembalikan satu salinan rentetan di mana setiap medan pengganti digantikan dengan nilai rentetan parameter yang sepadan.

    Contoh:

    <code class="language-python">>>> word = 'golden'
    >>> len(word)
    6
    >>> word + 'age'
    'goldenage'
    >>> 'la' * 3
    'lalala'
    >>></code>
  • str.lower() : Tukar semua aksara huruf besar dalam rentetan ke huruf kecil.

    Contoh:

    <code class="language-python">>>> "i Enjoy traveling. Do you?".capitalize()
    'I enjoy traveling. do you?'
    >>></code>
  • str.removeprefix(prefix, /) : Menghapuskan awalan yang ditentukan pada permulaan rentetan, dan mengembalikan rentetan asal jika awalan tidak dapat dijumpai.

    Contoh:

    <code class="language-python">>>> sentence = 'i Enjoy traveling. Do you?'
    >>> len(sentence)
    26
    >>> sentence.center(31)
    '  i Enjoy traveling. Do you? '
    >>> sentence.center(30)
    ' i Enjoy traveling. Do you? '</code>
  • str.removesuffix(suffix, /) : Menghapuskan akhiran yang ditentukan pada akhir rentetan, dan mengembalikan rentetan asal jika akhiran tidak dapat dijumpai.

    Contoh:

    <code class="language-python">>>> sentence = "i Enjoy traveling. Do you, 山本さん?"
    >>> sentence.encode()
    b'i Enjoy traveling. Do you, \xe5\xb1\xb1\xe6\x9c\xac\xe3\x81\x95\xe3\x82\x93?'
    >>> sentence.encode(encoding='ascii')
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 27-30: ordinal not in range(128)
    >>> sentence.encode(encoding='ascii', errors='replace')
    b'i Enjoy traveling. Do you, ?????'</module></stdin></code>
  • str.replace(old, new[, count]) : Gantikan semua substrings yang muncul dalam rentetan dengan old. Jika parameter new disediakan, hanya substrings kejadian count yang diganti. count

    Contoh:

    <code class="language-python">>>> "I bought {0} apples and the cost {1:.2f} Ghana cedis.".format(2, 18.70)
    'I bought 2 apples and the cost 18.70 Ghana cedis.'
    >>> "My name is {first_name}, and I'm a {profession}.".format(first_name='Ben', profession='doctor')
    "My name is Ben, and I'm a doctor."
    >>></code>
  • str.strip([chars]): Mengembalikan rentetan baru di mana watak -watak yang ditentukan pada permulaan dan akhir rentetan asal telah dikeluarkan. Jika parameter tidak disediakan, ruang dikeluarkan secara lalai. chars

    Contoh:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.lower()
    'i enjoy traveling. do you?'
    >>></code>
  • str.title(): Mempunyai huruf pertama setiap perkataan dalam rentetan dan huruf kecil selebihnya huruf.

    Contoh:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removeprefix('i')
    ' Enjoy traveling. Do you?'
    >>></code>
  • str.upper(): Tukar semua aksara dalam rentetan ke huruf besar.

    Contoh:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removesuffix('Do you?')
    'i Enjoy traveling. '
    >>></code>

Kaedah untuk menyatukan dan berpecah rentetan

  • str.join(iterable): Concatenate rentetan dalam objek yang boleh dimatikan ke dalam rentetan baru. Jika objek yang boleh dimatikan mengandungi nilai bukan rentetan, pengecualian dibuang. TypeError

    Contoh:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.replace('Enjoy','dislike')
    'i dislike traveling. Do you?'
    >>> 'Things fall apart'.replace('a','e',1)
    'Things fell apart'
    >>></code>
  • str.split(sep=None, maxsplit=-1): Pecahkan rentetan ke dalam senarai mengikut pemisah yang ditentukan.

    Contoh:

    <code class="language-python">>>> word1 = ' whitespace '.strip()
    >>> word1
    'whitespace'
    >>> word2 = 'exercise'.strip('e')
    >>> word2
    'xercis'
    >>> word3 = 'chimpanze'.strip('acepnz')
    >>> word3
    'him'
    >>></code>

bagaimana untuk menanyakan rentetan

  • str.count(sub[, start[, end]]): Mengembalikan bilangan kali substring muncul dalam rentetan. sub

    Contoh:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.title()
    'I Enjoy Traveling. Do You?'
    >>></code>
  • str.find(sub[, start[, end]]): Mengembalikan indeks lokasi di mana substring muncul untuk kali pertama dalam rentetan. Jika substring tidak dijumpai, kembali -1. sub

    Contoh:

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.upper()
    'I ENJOY TRAVELING. DO YOU?'
    >>></code>
  • str.index(sub[, start[, end]]): Mengembalikan indeks lokasi di mana substring muncul untuk kali pertama dalam rentetan. Jika substring tidak dijumpai, pengecualian dibuang. sub ValueError Contoh:

    <code class="language-python">>>> words = ["Accra", "is", "a", "beautiful", "city"]
    >>> ' '.join(words)
    'Accra is a beautiful city'
    >>> names = ['Abe', 'Fred', 'Bryan']
    >>> '-'.join(names)
    'Abe-Fred-Bryan'
    >>></code>
Kaedah untuk mengembalikan nilai boolean

  • str.endswith(suffix[, start[, end]]) : pulangan suffix Jika rentetan berakhir dengan True yang ditentukan; False

    Contoh:

    <code class="language-python">greeting = "Hello, World!"</code>
  • str.isalnum(): pulangan Jika rentetan mengandungi aksara alfanumerik dan mempunyai sekurang -kurangnya satu aksara; True False Contoh:

    <code class="language-python">>>> word = 'golden'
    >>> len(word)
    6
    >>> word + 'age'
    'goldenage'
    >>> 'la' * 3
    'lalala'
    >>></code>
  • : pulangan str.isalpha() Jika semua aksara dalam rentetan adalah huruf dan mempunyai sekurang -kurangnya satu aksara; True Contoh: False

    <code class="language-python">>>> "i Enjoy traveling. Do you?".capitalize()
    'I enjoy traveling. do you?'
    >>></code>
  • : pulangan Jika semua aksara dalam rentetan adalah aksara ASCII atau rentetan kosong; str.isascii() Contoh: True False

    <code class="language-python">>>> sentence = 'i Enjoy traveling. Do you?'
    >>> len(sentence)
    26
    >>> sentence.center(31)
    '  i Enjoy traveling. Do you? '
    >>> sentence.center(30)
    ' i Enjoy traveling. Do you? '</code>
  • : pulangan

    Jika rentetan mengandungi semua aksara perpuluhan dan mempunyai sekurang -kurangnya satu aksara; str.isdecimal() Contoh: True False

    <code class="language-python">>>> sentence = "i Enjoy traveling. Do you, 山本さん?"
    >>> sentence.encode()
    b'i Enjoy traveling. Do you, \xe5\xb1\xb1\xe6\x9c\xac\xe3\x81\x95\xe3\x82\x93?'
    >>> sentence.encode(encoding='ascii')
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 27-30: ordinal not in range(128)
    >>> sentence.encode(encoding='ascii', errors='replace')
    b'i Enjoy traveling. Do you, ?????'</module></stdin></code>
  • : pulangan
  • Jika rentetan mengandungi semua aksara angka dan mempunyai sekurang -kurangnya satu aksara;

    Contoh: str.isnumeric() True False

    <code class="language-python">>>> "I bought {0} apples and the cost {1:.2f} Ghana cedis.".format(2, 18.70)
    'I bought 2 apples and the cost 18.70 Ghana cedis.'
    >>> "My name is {first_name}, and I'm a {profession}.".format(first_name='Ben', profession='doctor')
    "My name is Ben, and I'm a doctor."
    >>></code>
    : pulangan
  • Jika semua aksara dalam rentetan adalah huruf kecil dan mempunyai sekurang -kurangnya satu aksara;
  • Contoh: str.islower() True False

    : pulangan
    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.lower()
    'i enjoy traveling. do you?'
    >>></code>
    Jika semua aksara dalam rentetan dipermodalkan dan mempunyai sekurang -kurangnya satu aksara;
  • Contoh:

    str.isupper() True False

    : pulangan

    Jika rentetan bermula dengan
    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removeprefix('i')
    ' Enjoy traveling. Do you?'
    >>></code>
    yang ditentukan;
  • Contoh:

    str.startswith(prefix[, start[, end]]) prefix True kaedah byte (bytes.decode ()) False

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.removesuffix('Do you?')
    'i Enjoy traveling. '
    >>></code>

: Decode bait ke dalam rentetan. Secara lalai, pengekodan adalah 'UTF-8', dan jika ralat berlaku, pengecualian

akan dibangkitkan.
    ,
  • dan

    adalah parameter kata kunci ralat yang menentukan bagaimana pengecualian dikendalikan. bytes.decode(encoding='utf-8', errors='strict') Contoh:

    UnicodeDecodeError strict ignore Ringkasan replace

    Penguasaan dalam kaedah rentetan python adalah penting untuk pemprosesan data teks yang cekap. Python menyediakan banyak alat untuk melakukan manipulasi rentetan dengan mudah dan meningkatkan kecekapan pengaturcaraan.

    <code class="language-python">>>> 'i Enjoy traveling. Do you?'.replace('Enjoy','dislike')
    'i dislike traveling. Do you?'
    >>> 'Things fall apart'.replace('a','e',1)
    'Things fell apart'
    >>></code>
  • Cabaran

cuba meramalkan output kod berikut:

anda boleh menjalankan kod dalam persekitaran interaktif python untuk mengesahkan jawapan anda.

(bahagian Soalan Lazim ditinggalkan kerana terlalu lama dan tidak sepadan dengan matlamat asal pseudo. Kandungan FAQS boleh ditambah di tempat lain seperti yang diperlukan.)

Atas ialah kandungan terperinci Kaedah rentetan python, dengan contoh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn