Masalah
Untuk mengalih keluar aksara tertentu daripada rentetan dalam Python, perkara biasa pendekatan adalah untuk menggelung melalui rentetan, mengenal pasti dan mengalih keluar aksara yang tidak diingini. Walau bagaimanapun, pelaksanaan pendekatan ini selalunya gagal untuk mengubah suai rentetan.
Jawapan
Memahami kebolehubahan rentetan dalam Python adalah penting. Rentetan tidak boleh diubah, bermakna ia tidak boleh diubah suai secara langsung. Sebarang percubaan untuk menukar aksara dalam rentetan menghasilkan penciptaan rentetan baharu.
Untuk mengalih keluar aksara tertentu dengan betul, tetapkan rentetan yang diubah suai kembali kepada pembolehubah asal. Berikut ialah contoh:
line = "Hello, world!" for char in " ?.!/;:": line = line.replace(char, "") # Create a new string with the character removed print(line) # Output: "Hello,world"
Sebagai alternatif, anda boleh menggunakan fungsi str.translate terbina dalam:
line = "Hello, world!" line = line.translate(None, "!@#$") # Remove characters from "!@#$" print(line) # Output: "Hello, world"
Atau penggantian ungkapan biasa dengan re.sub:
import re line = "Hello, world!" line = re.sub('[!@#$]', '', line) # Replace characters in `[]` with an empty string print(line) # Output: "Hello, world"
Dalam Python 3, untuk rentetan Unicode:
unicode_line = "Hello, world!" translation_table = {ord(c): None for c in "!@#$"} unicode_line = unicode_line.translate(translation_table) # Delete characters with None mapping print(unicode_line) # Output: "Hello, world"
Dengan memahami kebolehubahan rentetan, anda boleh mengalih keluar aksara tertentu dengan berkesan dan memanipulasi rentetan dengan cekap dalam Python.
Atas ialah kandungan terperinci Bagaimanakah Saya Mengeluarkan Aksara Tertentu dengan Cekap daripada Rentetan dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!