Я хочу получить список объектов PosixPath и отсортировать его по размеру соответствующего файла. Я пытаюсь сделать это с помощью отсортированной функции. Ключ, который я хочу использовать для сортировки: object.stat().st_size
, где объект - это объект PosixPath, stat()
возвращает объект os.stat_result
, а st_size
- размер файла, соответствующего объекту PosixPath. Я знаю, как сортировать на основе метода объекта или атрибута объекта, используя operator.methodcaller
или operator.attrgetter
, но я не могу понять, как использовать атрибут объекта, возвращаемый methodcaller
.
Я попробовал следующее и некоторые варианты, но это не работает:
from operator import attrgetter, methodcaller
from pathlib import Path
sorted(Path('my_directory').glob('*.extension'), key=methodcaller('stat').st_size)