Я работал над дополнительными вопросами для http://learnpythonthehardway.com. После написания программы, которая открывала и читала файл, я попытался изменить его, чтобы добавить режим в команду open. Но всякий раз, когда я это делаю, он возвращает None
, а также содержимое файла.Программа продолжает возвращать Нет, хотя у меня нет определения.
Вот код:
from sys import argv
script, filename = argv
txt = open(filename, "r")
print "Here's your file %r:" % filename
print txt.read()
print txt.close()
print "Type the filename again:"
file_again = raw_input("> ")
txt_again = open(file_again, "r")
print txt_again.read()
print txt_again.close()
Вот что он печатает:
$ python ex15.py filey.txt
Here's your file 'filey.txt':
whatever
None
Type the filename again:
> filey.txt
whatever
None
слеши между линиями.
Я нашел вопрос, объясняющий, что, когда вы не укажете, python автоматически возвращает None
. Однако, когда я пытаюсь использовать команду return вместо этого или в дополнение к печати, для этого требуется определение. Когда я добавляю определение, я не могу заставить остальную часть кода работать. Как я могу избавиться от этого None
?
Я также был бы признателен, если бы кто-нибудь мог объяснить, почему он появляется в режиме «r», но не без него.
Спасибо, что зафиксировал его полностью. – Danny