Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa String dalam Python Tidak Boleh Diubah Suai Terus?
String: Ditugaskan, Tidak Bermutasi
Persoalan timbul daripada percubaan untuk menyalin aksara daripada satu rentetan, s1, ke rentetan yang lain, s2. Tugasan kepada s2[j] gagal kerana sifat rentetan yang wujud dalam Python: ia tidak boleh diubah suai secara langsung.
Tidak seperti dalam C atau bahasa lain yang rentetan boleh berubah, rentetan dalam Python tidak boleh diubah. Ini bermakna setelah dibuat, rentetan tidak boleh ditukar atau diubah suai di tempatnya. Percubaan untuk memberikan nilai kepada aksara tertentu dalam rentetan akan mengakibatkan objek 'str' tidak menyokong penetapan item".
Penyelesaian Python: Rentetan sebagai Senarai Aksara
Python menyediakan pendekatan alternatif untuk mengubah suai rentetan: dengan menganggapnya sebagai senarai aksara Fungsi list() boleh digunakan untuk menukar rentetan kepada senarai, membenarkan setiap aksara diakses dan diubah suai secara individu.
<code class="python">str1 = "Hello World" list1 = list(str1) list1[5] = 'u' str1 = ''.join(list1) print(str1) # Outputs "mystrung"</code>
Dalam contoh ini, rentetan asal str1 ditukarkan kepada senarai senarai1 Aksara pada indeks 5 kemudiannya diubah suai menggunakan tugasan item Akhirnya, senarai senarai yang telah disemak ditukar kembali kepada rentetan menggunakan ''. Fungsi .join(), mengekalkan perubahan yang dibuat pada aksara individu.
Atas ialah kandungan terperinci Mengapa String dalam Python Tidak Boleh Diubah Suai Terus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!