Tôi đang tạo một số đối tượng từ tệp (trình xác thực từ tệp xsd mẫu, để vẽ cùng các tệp xsd khác, vì nó xảy ra) và tôi muốn tạo lại các đối tượng khi tệp trên đĩa thay đổi.Bộ nhớ cache tập tin Python
tôi có thể tạo ra một cái gì đó như:
def getobj(fname, cache = {}):
try:
obj, lastloaded = cache[fname]
if lastloaded < last_time_written(fname):
# same stuff as in except clause
except KeyError:
obj = create_from_file(fname)
cache[fname] = (obj, currenttime)
return obj
Tuy nhiên, tôi muốn sử dụng của người khác kiểm tra mã nếu nó tồn tại. Có một thư viện hiện có làm một cái gì đó như thế này?
Cập nhật: Tôi đang sử dụng trăn 2.7.1.
Lưu ý rằng thay vì lặp lại các mã trong 'khoản except' bên 'tuyên bố if' của bạn, bạn có thể chỉ' nâng KeyError()' để thay thế. – Amber
Đối số mặc định có thể thay đổi tốt! – katrielalex
@katrielalex Cảm ơn bạn! – Marcin