Ganti semua kemunculan karakter dalam daftar python

Dalam tutorial singkat ini, kita melihat bagaimana Anda bisa menggunakan Python untuk mengganti karakter dalam sebuah string. Kami memecah kode untuk membantu Anda memahami fungsinya

Daftar isi. Python mengganti karakter dalam string

  • ganti python()
  • Kode dan Penjelasan
  • Menutup pikiran - Python mengganti karakter dalam string

Tidak seperti daftar, string Python tidak dapat diubah dan karenanya tidak dapat diubah setelah diinisialisasi. Oleh karena itu, metode yang digunakan untuk mengedit daftar tidak dapat digunakan pada string. Namun, Python memiliki beberapa fungsi yang dapat menggantikan karakter dalam string

ganti python()

Metode ganti Python () digunakan untuk menemukan dan mengganti karakter dalam sebuah string. Itu membutuhkan substring untuk diteruskan sebagai argumen; . Metode replace() umumnya digunakan dalam pembersihan data

Namun, string yang diberikan tidak dapat diubah, fungsinya menggantikan karakter pada salinan string asli. Jadi pastikan Anda menyimpan string baru jika Anda ingin menggunakannya lebih lanjut

Sintaks ganti ()

string.replace(old, new, count)
Di sini "string" mengacu pada string yang ingin Anda ganti dengan karakter

Parameter (Python mengganti karakter dalam string)

  • Lama - Diperlukan, substring yang ingin Anda ganti
  • Baru - Diperlukan, substring yang ingin Anda ganti dengan string lama
  • Hitung - Opsional, tentukan berapa kali Anda ingin mengganti string. Jika dibiarkan kosong, semua kemunculan akan diganti

Kode dan Penjelasan

# use of replace() method 
 
string = "Join our community of top freelancers"
  
# replace "top" with "top 1%"
print(string.replace("top", "top 1%"))
 
# printing the original string
print(string)
Potongan kode di atas menghasilkan yang berikut ini.
Join our community of top 1% freelancers
Join our community of top freelancers

Seperti yang Anda lihat, substring diganti tetapi string aslinya tetap sama. Juga, mengingat kami tidak menentukan argumen hitungan, semua kejadian diganti

Mari kita lihat kasus di mana kita mengganti beberapa contoh string

string = "python is a programming language"

# replace "p" with "P" once
print(string.replace("p", "P",1))
 
# replace "p" with "P" once
print(string.replace("p", "P"))

Dalam cuplikan kode di atas, pertama-tama kita mengganti "p" hanya sekali sedangkan pada pernyataan cetak kedua kita belum memberikan argumen tandingan. Ini berarti semua kejadian akan diganti

Mengganti semua atau n kemunculan substring dalam string yang diberikan adalah masalah manipulasi string dan pemrosesan teks yang cukup umum pada umumnya. Untungnya, sebagian besar tugas ini dipermudah dengan Python dengan beragam fungsi bawaannya, termasuk fungsi ini

Katakanlah, kita memiliki string yang berisi kalimat berikut

The brown-eyed man drives a brown car.
_

Tujuan kami adalah mengganti kata

string.replace(oldStr, newStr, count)
_1 dengan kata
string.replace(oldStr, newStr, count)
2

The blue-eyed man drives a blue car.

Pada artikel ini, kita akan menggunakan fungsi

string.replace(oldStr, newStr, count)
_3 serta fungsi
string.replace(oldStr, newStr, count)
4 dan
string.replace(oldStr, newStr, count)
5 dengan pola untuk mengganti semua kemunculan substring dari string

mengganti()

Cara termudah untuk melakukannya adalah dengan menggunakan fungsi bawaan -

string.replace(oldStr, newStr, count)
3

string.replace(oldStr, newStr, count)

Dua parameter pertama diperlukan, sedangkan yang ketiga adalah opsional.

string.replace(oldStr, newStr, count)
7 adalah substring yang ingin kita ganti dengan
string.replace(oldStr, newStr, count)
8. Yang perlu diperhatikan adalah bahwa fungsi mengembalikan string baru, dengan transformasi yang dilakukan, tanpa memengaruhi yang asli

Mari kita coba

string_a = "The brown-eyed man drives a brown car."
string_b = string_a.replace("brown", "blue")
print(string_a)
print(string_b)

Kami telah melakukan operasi pada

string.replace(oldStr, newStr, count)
_9, mengemas hasilnya ke
string_a = "The brown-eyed man drives a brown car."
string_b = string_a.replace("brown", "blue")
print(string_a)
print(string_b)
0 dan mencetak keduanya

Kode ini menghasilkan

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.

Sekali lagi, string dalam memori yang

string.replace(oldStr, newStr, count)
_9 menunjuk ke tetap tidak berubah. String dalam Python tidak dapat diubah, yang berarti Anda tidak dapat mengubah string. Namun, Anda dapat menetapkan ulang variabel referensi ke nilai baru

Untuk melakukan operasi ini di tempat, kita cukup menetapkan ulang

string.replace(oldStr, newStr, count)
9 ke dirinya sendiri setelah operasi

string_a = string_a.replace("brown", "blue")
print(string_a)

Di sini, string baru yang dihasilkan oleh metode

string.replace(oldStr, newStr, count)
_3 ditugaskan ke variabel
string.replace(oldStr, newStr, count)
9

Ganti n Kemunculan Substring

Sekarang, bagaimana jika kita tidak ingin mengubah semua kemunculan substring?

Di situlah parameter ketiga dari fungsi

string.replace(oldStr, newStr, count)
3 masuk. Ini mewakili jumlah substring yang akan diganti. Kode berikut hanya menggantikan kemunculan pertama kata
string.replace(oldStr, newStr, count)
1 dengan kata
string.replace(oldStr, newStr, count)
2

string_a = "The brown-eyed man drives a brown car."
string_a = string_a.replace("brown", "blue", 1)
print(string_a)

Dan ini mencetak

The blue-eyed man drives a brown car.

Secara default, parameter ketiga diatur untuk mengubah semua kejadian

Kemunculan Substring dengan Ekspresi Reguler

Untuk meningkatkan masalah lebih jauh, katakanlah kita ingin tidak hanya mengganti semua kemunculan substring tertentu, tetapi mengganti semua substring yang sesuai dengan pola tertentu. Bahkan ini dapat dilakukan dengan one-liner, menggunakan ekspresi reguler, dan modul

string_a = "The brown-eyed man drives a brown car."
string_b = string_a.replace("brown", "blue")
print(string_a)
print(string_b)
8 perpustakaan standar

Ekspresi reguler adalah topik yang kompleks dengan penggunaan yang luas dalam ilmu komputer, jadi kami tidak akan terlalu mendalami artikel ini, tetapi jika Anda perlu memulai dengan cepat, Anda dapat melihat panduan kami tentang Ekspresi Reguler dengan Python

Lihat panduan praktis dan praktis kami untuk mempelajari Git, dengan praktik terbaik, standar yang diterima industri, dan menyertakan lembar contekan. Hentikan perintah Googling Git dan benar-benar pelajari itu

Intinya, ekspresi reguler mendefinisikan sebuah pola. Misalnya, katakanlah kita memiliki teks tentang orang yang memiliki kucing dan anjing, dan kita ingin mengubah kedua istilah tersebut dengan kata

string_a = "The brown-eyed man drives a brown car."
string_b = string_a.replace("brown", "blue")
print(string_a)
print(string_b)
9. Pertama, kita perlu menentukan pola yang cocok dengan kedua istilah seperti -
The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
0

Menggunakan fungsi sub()

Dengan pola yang disortir, kita akan menggunakan fungsi

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
1 yang memiliki sintaks berikut

re.sub(pattern, repl, string, count, flags)

Argumen pertama adalah pola yang kita cari (sebuah string atau objek

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
2),
The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
3 adalah apa yang akan kita sisipkan (bisa berupa string atau fungsi; jika itu adalah string, garis miring terbalik apa pun yang lolos di dalamnya adalah

Argumen opsional adalah

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
5 dan
The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
6 yang masing-masing menunjukkan berapa banyak kemunculan yang perlu diganti dan bendera yang digunakan untuk memproses ekspresi reguler

Jika pola tidak cocok dengan substring apa pun, string asli akan dikembalikan tanpa perubahan

import re
string_a = re.sub(r'(cat|dog)', 'pet', "Mark owns a dog and Mary owns a cat.")
print(string_a)

Kode ini dicetak

The blue-eyed man drives a blue car.
0

Pencocokan Pola Case-Insensitive

Untuk melakukan pencocokan pola case-insensitive, misalnya, kita akan menyetel parameter flag ke

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
7

The blue-eyed man drives a blue car.
1

Sekarang kombinasi kasus apa pun dari

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
8 juga akan disertakan. Saat mencocokkan pola dengan banyak string, untuk menghindari penyalinan di banyak tempat, kita dapat menentukan objek
The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
2. Mereka juga memiliki fungsi
string.replace(oldStr, newStr, count)
_4 dengan sintaks

The blue-eyed man drives a blue car.
2

Menggunakan Objek Pola

Mari kita tentukan

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
_2 untuk kucing dan anjing dan periksa beberapa kalimat

The blue-eyed man drives a blue car.
3

Yang memberi kita output

The blue-eyed man drives a blue car.
4

Fungsi subn()

Ada juga metode

string.replace(oldStr, newStr, count)
_5 dengan sintaks

The blue-eyed man drives a blue car.
5

Fungsi

string.replace(oldStr, newStr, count)
_5 mengembalikan sebuah tuple dengan string dan jumlah kecocokan dalam String yang telah kita cari

The blue-eyed man drives a blue car.
6

Tupelnya terlihat seperti

The blue-eyed man drives a blue car.
7

Objek

The brown-eyed man drives a brown car.
The blue-eyed man drives a blue car.
_2 berisi fungsi
string.replace(oldStr, newStr, count)
5 yang serupa

The blue-eyed man drives a blue car.
_8

Dan itu digunakan dengan cara yang sangat mirip

The blue-eyed man drives a blue car.
_9

Ini menghasilkan

string.replace(oldStr, newStr, count)
0

Kesimpulan

Python menawarkan fungsi yang mudah dan sederhana untuk penanganan string. Cara termudah untuk mengganti semua kemunculan substring yang diberikan dalam sebuah string adalah dengan menggunakan fungsi

string.replace(oldStr, newStr, count)
3

Jika diperlukan, modul

string_a = "The brown-eyed man drives a brown car."
string_b = string_a.replace("brown", "blue")
print(string_a)
print(string_b)
8 perpustakaan standar menyediakan perangkat yang lebih beragam yang dapat digunakan untuk lebih banyak masalah khusus seperti menemukan pola dan pencarian yang tidak peka huruf besar/kecil

Apakah ganti () ganti semua instance Python?

replace() menerima. Secara default,. replace() akan menggantikan semua instance dari substring . Namun, Anda dapat menggunakan hitungan untuk menentukan jumlah kejadian yang ingin diganti.

Bagaimana Anda mengganti karakter tertentu dalam daftar dengan Python?

Menggunakan str. replace() , kita dapat mengganti karakter tertentu. Jika kita ingin menghapus karakter tertentu tersebut, kita dapat mengganti karakter tersebut dengan string kosong. str. metode replace() akan mengganti semua kemunculan karakter tertentu yang disebutkan.

Bagaimana Anda mengganti banyak karakter dalam daftar dengan Python?

01) Menggunakan metode replace() . Metode ganti mengembalikan objek baru (string) menggantikan bidang tertentu (karakter) dengan nilai baru.

Bagaimana Anda mengganti semua kemunculan karakter dalam sebuah string?

Gunakan metode replace() untuk mengganti semua kemunculan karakter tertentu dalam sebuah string.