s = 'w w'
s.strip() # 为什么去除不了中间的空格
s = 'w w'
s.replace('\s',';') # 为什么替换不了,\s 表示空格没错吧。。
Malah, keperluan terakhir ialah ini:
Iaitu, (berbilang) ruang, (berbilang) pemisah baris, (berbilang) pemulangan pengangkutan dan aksara ruang putih lain akan muncul di tengah dan di kedua-dua belah rentetan yang saya mahu tukar aksara ruang kosong ini kepada ";" , adakah cara yang baik
Strip menghilangkan ruang di hujung kiri dan kanan, tetapi ruang di tengah tidak boleh dibuang.
ganti tidak boleh menggunakan ungkapan biasa sebagai parameter, anda mesti menggunakan modul
re
.replace digunakan untuk menggantikan satu rentetan dengan rentetan yang lain Untuk itu, s ialah rentetan biasa dan tiada maksud lain.
Berdasarkan keperluan anda, saya rasa anda boleh menggunakan fungsi str.maketrans dan terjemah untuk mencapainya.
Persekitaran larian saya ialah python3.5, contohnya adalah seperti berikut:
s = 'w w'
transmap=str.maketrans({' ':';','r': '; ','n':';'})
print( s.translate(transmap) )
Hasil lari:
w;w
Sebenarnya
";".join(s.split())
tidak mengapa