Статистика каталогов на Python

#python #operating-system #statistics #directory

#python #операционная система #Статистика #каталог

Вопрос:

Как получить статистику для каталога (не файла) в python?

Например, мне нужно знать, когда был создан каталог. Кажется, что os.stat должен быть решением, но os.stat не работает для каталогов. Насколько я могу судить, это работает только с файлами.

Спасибо!

Комментарии:

1. Пожалуйста, укажите исключение, которое вы получаете; тогда мы сможем более эффективно помочь вам в отладке! 🙂

2. Просто нажмите удалить над этим списком комментариев.

Ответ №1:

это работает с каталогами

 >>> import os
>>> os.stat("/")
(16877, 2L, 2049L, 25, 0, 0, 4096L, 1302891913, 1302891902, 1302891902)
  

Ответ №2:

Кажется, у меня хорошо работает:

 >>> import os
>>> os.stat("/etc/")
posix.stat_result(st_mode=16877, st_ino=204001, st_dev=2051L, st_nlink=170, st_uid=0, st_gid=0, st_size=12288, st_atime=1303368927, st_mtime=1304030174, st_ctime=1304030174)
>>> os.stat("/etc")
posix.stat_result(st_mode=16877, st_ino=204001, st_dev=2051L, st_nlink=170, st_uid=0, st_gid=0, st_size=12288, st_atime=1303368927, st_mtime=1304030174, st_ctime=1304030174)
>>> 
  

Проверка с помощью другого инструмента:

 $ stat /etc
  File: `/etc'
  Size: 12288       Blocks: 24         IO Block: 4096   directory
Device: 803h/2051d  Inode: 204001      Links: 170
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2011-04-20 23:55:27.000000000 -0700
Modify: 2011-04-28 15:36:14.000000000 -0700
Change: 2011-04-28 15:36:14.000000000 -0700
  

Каким образом это плохо работает для вас?

Комментарии:

1. Мой плохой … большой сбой в коде. Как я могу удалить этот вопрос с форума? Спасибо, ребята.

2. @EmBee, может быть неловко оставлять это, но это может помочь другому программисту в будущем, который задается вопросом, os.stat() работает с каталогами или нет; велика вероятность, что это появится на вершине рейтинга Google, поскольку вопросы и ответы SO обычно очень специфичны. 🙂

3. Замечание принято, сарнольд. Как преподаватель (не в Python), я полностью согласен с таким подходом.