Итак, я работаю над алгоритмом сортировки, который включает чтение информации в разных текстовых файлах и запись «имен» в правильный текстовый файл.
Идея состоит в том, что есть два числовых ввода и одно имя, которое вы должны войти в алгоритм, а затем, если эти два числовых ввода совпадают с числами в текстовом файле, он отсортирует имя в этот текстовый файл.
Существует главный текстовый файл со всеми имена текстовых файлов, которые я go просматриваю в for l oop как средство для сортировки каждого текстового файла один за другим в алгоритме.
Проблема, с которой я столкнулся, связана с этим блоком кода.
Refersearch = open("Allresearchers.txt", "r")
for f in Refersearch:
Docucheck = linecache.getline(f + ".txt", 1)
print("Docucheck of" + f + "is")
print(Docucheck)
Doculine = Docucheck.strip()
if Docucheck.isdigit():
dline = int(Docucheck)
print("Dline of " + f + "is")
print(dline)
Я знаю, что нет ничего плохого в главном файле или файле "Allresearchers", потому что, когда я просто печатаю f отдельно, все имена текстовых файлов появляются регулярно. Однако, когда я пытаюсь просто взять первую строку каждого текстового файла, превратить ее в целое число и распечатать, возникает странная ошибка.
Docucheck ofjoe
is
Docucheck ofdon
is
Docucheck ofkanye
is
Docucheck ofErin
is
Docucheck ofVictoris
1
Как видите, по какой-то причине он игнорирует целое число во всех текстовых файлах, кроме последнего. Даже тогда, для последнего, он не преобразует его в dline, который должен быть целым числом. Я не совсем уверен, что происходит, и я не думаю, что ошибка связана с самими текстовыми файлами, потому что буквально два числа в каждом, как можно увидеть здесь, и здесь
Вот текстовый файл «победитель», тот, который программа считала частично правильно, для справки.