Lebih
Bagaimana untuk menghapus sebuah karakter dari sebuah string menggunakan Python
Ada sebuah string, misalnya. CONTOH
.
Bagaimana saya bisa menghapus tengah karakter, yaitu, M
dari itu? Saya don't perlu kode. Saya ingin tahu:
- Apakah string di Python akhir di setiap karakter khusus?
- Yang lebih baik dengan cara - merubah semuanya kanan ke kiri mulai dari tengah karakter ATAU penciptaan sebuah string baru dan tidak menyalin tengah karakter?
414
15
Di Python, string yang dapat berubah, sehingga anda harus membuat string baru. Anda memiliki beberapa pilihan cara untuk membuat string baru. Jika anda ingin menghapus 'M' di mana pun muncul:
Jika anda ingin menghapus karakter utama:
Anda bertanya apakah string yang diakhiri dengan karakter khusus. Tidak, anda berpikir seperti C programmer. Di Python, string disimpan dengan panjang mereka, sehingga setiap nilai byte, termasuk
\0
, dapat muncul dalam sebuah string.Ini mungkin adalah cara terbaik:
Don't khawatir tentang pergeseran karakter dan semacamnya. Kebanyakan kode Python terjadi pada tingkat yang jauh lebih tinggi dari abstraksi.
Untuk menggantikan posisi tertentu:
Untuk mengganti karakter tertentu:
String yang berubah. Tapi anda dapat mengkonversi mereka ke daftar, yang bisa berubah, dan kemudian mengkonversi daftar kembali ke string setelah anda've berubah.
Anda juga dapat membuat string baru, sebagai orang lain telah menunjukkan, dengan mengambil semua kecuali karakter yang anda inginkan dari yang ada string.
Anda dapat't, karena string di Python adalah berubah.
No. Mereka mirip dengan daftar karakter; panjang daftar mendefinisikan panjang dari string, dan tidak ada karakter yang bertindak sebagai terminator.
Anda tidak dapat memodifikasi yang sudah ada string, sehingga anda harus membuat yang baru mengandung segala sesuatu kecuali tengah karakter.
Gunakan
translate()
metode:UserString.MutableString
Bisa berubah dengan cara:
Saya telah melihat ini di suatu tempat di sini.
Bagaimana untuk menghapus satu karakter dari sebuah string: Berikut ini adalah contoh di mana ada tumpukan kartu direpresentasikan sebagai karakter dalam sebuah string. Salah satu dari mereka ditarik (impor acak modul secara acak.pilihan() fungsi, yang mengambil acak karakter dalam string). String baru, cardsLeft, dibuat untuk menahan sisa kartu yang diberikan oleh string fungsi replace() dimana parameter terakhir menunjukkan bahwa hanya satu "kartu" adalah untuk diganti dengan string kosong...
Berikut ini's apa yang saya lakukan untuk mengiris keluar "M":
Jika anda ingin menghapus/mengabaikan karakter dalam sebuah string, dan, misalnya, anda memiliki string ini,
"[11:L:0]"
dari web API respon atau sesuatu seperti itu, seperti file CSV, let's mengatakan anda menggunakan permintaan
loop dan menyingkirkan yang tidak diinginkan karakter:
Opsional split, dan anda akan dapat membaca nilai-nilai individual:
Sekarang mengakses setiap nilai yang lebih mudah:
Ini akan mencetak
Untuk menghapus
char
atausub-string
setelah (hanya kejadian pertama):CATATAN: di Sini
1
dapat diganti denganint
untuk jumlah kejadian yang ingin anda ganti.Anda dapat hanya menggunakan daftar pemahaman.
Asumsikan bahwa anda memiliki string:
nama saya
dan anda ingin menghapus karakterm
. gunakan kode berikut:String yang berubah di Python jadi pilihan anda berarti hal yang sama pada dasarnya.