Python поиск последнего файла в папке
Код работает в Windows, при попытке выполнить в Docker контейнере выдает ошибку
from pathlib import Path
import os
def lastvideofile():
p = Path(r'video')
files=p.rglob('*.avi')
latest_file = max(files, key=os.path.getctime)
return latest_file
print(lastvideofile())
TypeError: coercing to Unicode: need string or buffer, PosixPath found
понял что os.path.getctime() не подходит имя файла, но как подправить код чтоб и в Линуксе работало не понятно.
Ответы (1 шт):
Автор решения: GrAnd
→ Ссылка
Надо просто преобразовать имя файла из типа Path в обычную строку.
Как вариант:
latest_file = max(files, key=lambda f: os.path.getctime(str(f)))