Replace Text trong Python

Em mới học Python có thắc mắc này mong mọi người giúp đỡ ạ.
Ví dụ như em có một file Txt với các dòng như thế này.:
link1
Id1|Nam123456
link2
Id2|Nam123456

Em muốn thay đổi chuỗi Nam123456 thứ 2 bằng một chuỗi mới mà được người dùng nhập vào,
Chương trình sẽ cho người dùng nhập vào link, rồi nhập vào Id, pass>>>từ đó mình sẽ đi đến dòng tiếp theo của link và có chứa Id |pass.rồi thay đổi cái chuỗi Nam123456 bằng chuỗi người dùng nhập vào. Vậy có cách nào mình làm được như thế không ạ, em nghĩ là dùng readline nhưng không thấy khả quan, em có thử viết một hàm nhưng khi thay thì nó sẽ thay đổi toàn bộ những chuỗi giống bằng một chuỗi mới. Mong mọi người giúp đỡ ạ. Nếu có sai sót gì mong mọi người bỏ qua cho ạ, lần đầu đặt câu hỏi trên daynhauhoc em chưa biết diễn đạt sao cho tốt ạ. Em cảm ơn.

Cho data vào 1 cái list được không? Muốn đổi cái nào thì đổi, chả ảnh hưởng đến ai
p/s: mà bạn up hình lên làm gì cho hao tổn server của anh Đạt :wink:

List thì em chưa học tới, để em tìm hiểu thử, thanks anh,
p/s: Có biết au :v

Vậy cứ từ từ bạn à, nhưng sao lại học file mà chưa học list nhỉ :confused:

Em học trên LearnPythonTheHardWay á, list mới biết sơ qua thôi anh,

Mình cũng không hiểu rõ ý bạn lắm. Cho nên mình giả định nó thế này: người dùng nhập vào link, ID, password; chương trình sẽ thay thế password ban đầu bằng password vừa nhập.
Vậy thì bạn có thể thực hiện như thế này:
file_obj.readlines() đọc và trả về 1 list chứa tất cả các dòng của file object. Dùng list.index(link) để tim ra index của dòng link. +1 ra index của dòng ID|Password. Rồi thay thế dòng này bằng một dòng khác bạn muốn theo cấu trúc list[i] = new_IDPassword. Viết lại list này ra file dùng file_obj.writelines(list).

1 Like

Cảm ơn anh, đúng ý em rùi

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?