Tôi cần lấy giá trị của dòng trước đó trong một tệp và so sánh nó với dòng hiện tại khi tôi đang lặp qua tệp. Tệp này là HUGE vì vậy tôi không thể đọc toàn bộ hoặc truy cập ngẫu nhiên số dòng với linecache
vì chức năng thư viện vẫn đọc toàn bộ tệp vào bộ nhớ.Đọc dòng trước trong một tệp python
EDIT Tôi rất tiếc, tôi quên đề cập đến rằng tôi phải đọc tệp ngược.
EDIT2
Tôi đã thử những điều sau đây:
f = open("filename", "r")
for line in reversed(f.readlines()): # this doesn't work because there are too many lines to read into memory
line = linecache.getline("filename", num_line) # this also doesn't work due to the same problem above.
Bạn có nghĩa là chỉ là dòng ngay trước đó? Bạn không thể chỉ cần lưu nó khi bạn đi? –
Bạn sẽ có nhiều khả năng nhận trợ giúp hơn, nếu bạn cho chúng tôi thấy những gì bạn đã viết cho đến thời điểm này. – That1Guy
Bạn có thể cung cấp những gì bạn đã thử không? Lặp lại trên một dòng tập tin bằng dòng là có thể, và gán dòng cho một biến là có thể, vì vậy những gì chính xác là đi sai? Bằng cách này, lớn như thế nào là HUGE? – ChrisP