01/10/2018, 11:02

Làm sao để đọc file mà có thể ngắt lấy nội dung

mọi người cho mình hỏi, lúc đọc file làm sao để ngắt lấy nội dung. ví dụ như mình có một chuỗi số: 01020102 ; 0204306 đọc đến ; nghỉ để lấy dữ liệu đó, rồi đọc tiếp lấy dữ liệu sau ghi vào mảng khác.
cảm ơn mọi người đã quan tâm

Minh Hoàng viết 13:10 ngày 01/10/2018

bạn có thể dùng split(";") nếu không có yêu cầu gì đặc biệt

Henry viết 13:05 ngày 01/10/2018

Như anh trên đề cập, bạn sử dụng split để tách. Nó sẽ được như thế này

01020102 ; 0204306
=> ['01020102 ', ' 0204306']
Nếu bạn muốn gọn cái space thì sử dụng map strip
list(map(lambda x: x.strip(), lst))

Không thì bạn có thể xây dựng một hàm

def read_until(file, deli=';'):
    buffer = ''
    while True:
        b = file.read(1)  # đọc 1 kí tự
        buffer += b
        if b: # kiểm tra xem đã đọc hết file chưa
            # nếu chưa thì
            if b == deli:  # kiểm tra xem đã gặp kí tự cần dừng chưa?
                yield buffer  # trả về buffer
                buffer = ''  # gán lại buffer = '' để đọc tiếp lần sau
            else:  # nếu hết file rồi thì
                yield buffer
                break
Bài liên quan
0