Задать вопрос
@Ace_Viral

Как создать пустой файл в питон во время работы программы?

у меня задание написать простой файл менеджер, я должен вводить touch [fileName]
и файл должен создаваться как на linux но он создается только когда программа прекращает работу помогите исправить пожалуйста.
while True:
    command = input()
    command = " ".join(command.split())
    command = command.split(" ")
    # print(command)
    if command[0] == "pwd":
        cur_path = os.getcwd()
        print(cur_path)
    elif command[0] == "cd":
        os.chdir(command[1])
    elif command[0] == "touch":
        file = open(command[1],"w+")
        file.close()
  • Вопрос задан
  • 130 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@dmshar
Файл создается не тогда, когда программа завершает работу, а тогда когда отрабатывает метод close().
Это легко увидеть, если сделать маленький эксперимент:

import time
from datetime import datetime
print(datetime.now(),flush=True)   
file = open("ABC","w+")
print(datetime.now(),flush=True)   
file.close()
print(datetime.now(),flush=True)   
time.sleep(90)


Теперь смотрим скрин зкрана. Видно, что процесс не закончен (он уснул по sleep и проснется через полторы минуты, т.е. в 20: 37:.... , красный квадратик внизу справа подтверждает, что процесс активен ), а файл уже создан.

634c421515c53615750301.png
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы