Python возвращает пустую строку при чтении файла, а содержимое самого файла удаляет
Открываю файлы в цикле из списка, почему-то сегодня что-то сломалось, и при открытии файла возвращается пустая строка, а содержимое самого файла удаляется.
for i in range(len(channels_history_list)):
with open(f"./output/{channels_history_list[i]}", "r", encoding="utf-16") as channel_history:
text = channel_history.read().lower()
print(text)
Лог:
18:31:46.44 >>> Call to zero_morph in File "C:\Users\PycharmProjects\NLTK\main.py", line 55 18:31:46.44 .......... text = '' 18:31:46.44 55 | def zero_morph(text):
Пример файла по ссылке
EDIT:
channels_history_list = []
for root, dirs, files in os.walk("./output/"):
for name in files:
if "frequency" not in name and name.endswith(".txt"):
channels_history_list.append(name)
print(channels_history_list)
start_time = time.time()
print(os.getcwd())
for channel in channels_history_list:
print(channel)
# fname = r"C:\Users\Vadik\PycharmProjects\NLTK\output\" + channel
with open(f"C:\\Users\\Vadik\\PycharmProjects\\NLTK\\output\\{channel}", "r", encoding="utf-16") as channel_history:
text = channel_history.read().lower()
print(text)
Ответы (1 шт):
Для меня ваш код никакой проблемы не вызывает, всё работает так, как вы хотели (с вашим примером файла), выводится полный текст файла со строчными буквами.
Значит, ошибка не в программе, а может быть
- в неправильном пути к вашим файлам (
./output/), или - неправильном списке этих файлов (
channels_history_list).
Попробуйте заменить путь к файлам на абсолютный и проверите правильность списка файлов (например может быть, что он пустой).
Я создал такой список файлов:
channels_history_list = ["skabeeva_after_24.02.2022.txt", "skabeeva_after_24.02.2022.txt"]
(дважды тот же самый ваш файл, который я скопировал в правильную папку).
Между прочим, более питонский подход такой (разница в первых двух строках):
for channel in channels_history_list:
with open(f"./output/{channel}", encoding="utf-16") as channel_history:
text = channel_history.read().lower()
print(text)