Файл в папке, созданной перед самой папкой

#python #directory

#python #каталог

Вопрос:

У меня интересное поведение при чтении папки и файла во время создания папки. Может кто-нибудь объяснить это?

Создание папки

 os.makedirs(version_dir test_name)
 

Запуск подпроцесса в этой папке и создание там файла результата

 err_code = common.run_proc(common.get_root_dir()   test_name, custom_path_str=version_dir test_name)
 

Затем есть другой скрипт, в котором я читаю время создания папки и результирующего файла, используя os.get.getmtime и, по-видимому, создавая (как я понял из документов, это время модификации) время файла внутри папки 1403197510.1 и для самой папки 1403197510.19 .
Так что в основном я создал файл в несуществующей папке. Как это действительно работает или почему у меня такой странный результат?

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

1. Если getmtime — это время модификации, то это, очевидно, не время создания. В чем здесь заключается ваш вопрос?

2. Да, я обнаружил, что существует также os.get.getctime() функция, которая возвращает время создания. Но я хотел бы знать, о чем говорит @Shadow9043.

Ответ №1:

Я полагаю, что вы видите тот факт, что Windows изменит папки для представления файлов внутри.

Итак, это происходит:

  • os.makedirs() создает папку, указывает время изменения (с помощью os.path.getmtime). например, 1403197510.0
  • Запись файла в папку, указывает время модификации (с помощью os.path.getmtime). например, 1403197510.1
  • Папка обновлений Windows, указывает время изменения (с помощью os.path.getmtime). например, 1403197510.19