Разница между возвратом генератора и значений доходности ⇐ Python
-
Гость
Разница между возвратом генератора и значений доходности
Я столкнулся с проблемой с двумя фрагментами кода: один успешно выполнился, а другой нет, что привело к ошибке ValueError, связанной с операцией ввода-вывода в закрытом файле. Можете ли вы объяснить, почему один фрагмент кода оказался неудачным, а другой успешным, подчеркнув различия между ними?
Недействительно
def get_file_rows(path: str): с open(path, "r") как файлом: линии = (line.strip() для строки в файле) обратные линии линии = get_file_rows("test.txt") для строки в строках: печать (строка) ValueError: операция ввода-вывода в закрытом файле.
Действительно def get_file_rows(path: str): с open(path, "r") как файлом: для строки в файле: выход line.strip() линии = get_file_rows("test.txt") для строки в строках: печать (строка)
Я столкнулся с проблемой с двумя фрагментами кода: один успешно выполнился, а другой нет, что привело к ошибке ValueError, связанной с операцией ввода-вывода в закрытом файле. Можете ли вы объяснить, почему один фрагмент кода оказался неудачным, а другой успешным, подчеркнув различия между ними?
Недействительно
def get_file_rows(path: str): с open(path, "r") как файлом: линии = (line.strip() для строки в файле) обратные линии линии = get_file_rows("test.txt") для строки в строках: печать (строка) ValueError: операция ввода-вывода в закрытом файле.
Действительно def get_file_rows(path: str): с open(path, "r") как файлом: для строки в файле: выход line.strip() линии = get_file_rows("test.txt") для строки в строках: печать (строка)
Мобильная версия