У меня есть простой скрипт на python, который просматривает файлы в каталоге по поисковому запросу и сортирует его по os.path.getctime (получить время создания).Когда я печатаю список имен файлов напрямую, он печатает их в порядке от самого последнего к старому правильно.Но когда я пытаюсь выполнить этот код, после 30 или около того файлов он не начинается с последней.Если я только ищу первые 30 или около того файлов, он работает как ожидалось.Может кто-нибудь сказать мне, если это Python или что-то не так с моим кодом?Что я делаю неправильно?См. Код ниже.
import os
os.chdir('/home/user/logs/')
mystr = input('search string: ')
files = sorted(os.listdir('.'),key=os.path.getctime, reverse=True)
def search(start, stop):
for file in files[start:stop]:
print(file)
with open(file, 'r') as infile:
for line in infile:
if mystr in line:
print(line)
search(0,31) #works
search(0,400) #searches out of order or starts at weird order number.