Создание скрипта python, который возвращает размер нового файла - PullRequest
1 голос
/ 17 июня 2020

Я пытаюсь создать функцию create_python_script, которая создает новый python скрипт в текущем рабочем каталоге, добавляет к нему строку комментариев, объявленную переменной 'comments', и возвращает размер нового файла. Я получаю 0, но должно быть 31. Не уверен, что делаю неправильно.

    import os

def create_python_script(filename):
  comments = "# Start of a new Python program"
  with open("program.py", "w") as file:
    filesize = os.path.getsize("/home/program.py")
  return(filesize)

print(create_python_script("program.py"))

1 Ответ

2 голосов
/ 17 июня 2020

Вы фактически забыли записать в файл, поэтому он ничего не будет содержать. Еще одна важная вещь, о которой следует помнить, это то, что файл закрывается автоматически после оператора with. Другими словами: в файл ничего не записывается до тех пор, пока оператор with не закончится, поэтому размер файла в вашей программе все еще равен нулю. Это должно работать:

import os

def create_python_script(filename):
    comments = "# Start of a new Python program"
    with open(filename, "w") as f:
        f.write(comments)
    filesize = os.path.getsize(filename)
    return(filesize)

print(create_python_script("program.py"))

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

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