Mã đơn giản này chỉ cố gắng thay thế dấu chấm phẩy (tại vị trí do i chỉ định) bằng dấu hai chấm không hoạt động:
for i in range(0,len(line)):
if (line[i]==";" and i in rightindexarray):
line[i]=":"
Nó đưa ra lỗi
line[i]=":"
TypeError: 'str' object does not support item assignment
Làm cách nào để giải quyết vấn đề này để thay thế dấu chấm phẩy bằng dấu hai chấm? Việc sử dụng thay thế không hoạt động vì hàm đó không có chỉ mục - có thể có một số dấu chấm phẩy tôi không muốn thay thế.
Thí dụ
Trong chuỗi, tôi có thể có bất kỳ số lượng dấu chấm phẩy nào, ví dụ: "Hei der!; Hello there;!;"
Tôi biết tôi muốn thay thế cái nào (tôi có chỉ mục của chúng trong chuỗi). Sử dụng thay thế không hoạt động vì tôi không thể sử dụng chỉ mục với nó.
str.find()
Thay vào đó, hãy sử dụng để tìm vị trí của dấu chấm phẩy, sau đó sử dụng phép cắt để trích xuất chuỗi con.
str.replace()
BIF?