Итак, я пытаюсь переименовать некоторые файлы в то время, когда они были созданы, используя os.stat ("file"). St_stat.Затем я выскакиваю лишнюю информацию, мне нужно только время, потому что они уже отсортированы по дате в папках с датами.Код является своего рода спагетти, я все еще новичок в конце концов.Я использую так много str (), потому что иногда я получаю объекты 'None' из os.listdir (), и у меня возникает ошибка при попытке отформатировать целые числа в строках.Так что проблема в том, что он не работает должным образом.Я избавился от всех ошибок, и их было много, но это не переименовывает метку времени.Я получаю такие вещи, как это "0R3IJL ~ J".И это меняется с отметкой времени.Это заставляет меня думать, что оно каким-то образом связано со временем и может быть исправлено.
Файлы, которые я пытаюсь переименовать, - это .h264, и я работаю над Raspbian, на Raspberry Pi Zero W.
Вот еще несколько примеров имен, которые я получаю: 06RR8I ~ Y, 0OFKLJ ~ J, 0O5KZV ~ I, 0PJJ0D ~ V.
import os
import datetime
dates = []
for i in range(1,7):
if 1 <= i <= 6:
i = "0{}".format(str(i))
for j in range(1,31):
if 1 <= j <= 9:
j = "0{}".format(str(j))
dates.append("2019-{}-{}".format( i, j))
for dt in dates:
if os.path.exists(str(dt)):
os.chdir(str(dt))
for fil in os.listdir("."):
created = os.stat(str(fil)).st_ctime
da_cr = str(datetime.datetime.fromtimestamp(created))
print type(da_cr)
li_cr = list(da_cr)
if li_cr[-7] == ".":
for i in range(7):
li_cr.pop(-1)
for i in range(11):
li_cr.pop(0)
nn = "".join(l_c for l_c in li_cr)
print fil
os.rename(fil, str(nn))
os.chdir("../")