Bad-Coder
@Bad-Coder
Srenior Pityhon Developer

Почему выводит три пустые строки?

def create(Title, Description):
    try:
        Data_1 = "{\n"
        Data_2 = "    \"Title\": \"{}\",\n".format(Title)
        Data_3 = "    \"Description\": \"{}\"\n".format(Description)
        Data_4 = "}"
        Data = Data_1 + Data_2 + Data_3 + Data_4
        with open(f"Notes\\{Title}.json", "x") as Note:
            Note.write(Data)
            Note.close()
        with open("Data\\History.txt", "a") as History:
            History.write(Title + "\n")
            History.close()
        with open("Data\\Last.txt", "w") as History:
            History.write(Title + "\n")
            History.close()
    except FileExistsError:
        print("Такая запись уже есть.")
def getLastNote():
    with open("Data\\Last.txt", "r") as Last:
        if Last.read() == "":
            print("Пусто.")
        else:
            ReadLast = Last.read()
            print(ReadLast)
    Last.close()
def getAllNotes():
    with open("Data\\History.txt", "r") as History:
        if History.read() == "":
            print("История пуста.")
        else:
            ReadHistory = History.read()
            print(ReadHistory)
    History.close()
# create("Test", "Text...")
# create("Test2", "Text...")
getLastNote()
getAllNotes()

Результат:
>>>
>>>
>>>

Почему получаю три пустые строки?
В это время Last и History:
History.txt:
Test
Test2

Last.txt:
Test2
Что делать?
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
MinTnt
@MinTnt
Любитель однострочников (Версия 1.106)
Метод read() - который используется для считывания файла, может быть задействован лишь единожды. Далее он так сказать, становится "пустым". Просто привяжите значение к любой переменной. И далее используйте именно переменную.

P.s. эту строчку
ReadLast = Last.read()
Перенести вверх, и далее переделать дальнейшее использование в коде, под эту переменную.
Во второй функции сделать так же.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы