Простой поиск Python через файлы журналов скрипт сортируется, но завершает работу после 30 файлов - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть простой скрипт на 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.

1 Ответ

0 голосов
/ 17 февраля 2019

Просто обновление, похоже, у меня была проблема с тем, как это отображалось в моем терминале (я использую linux).Когда я записываю вывод в файл, все выглядит правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...