Самый простой способ чтения / записи содержимого файла в Python

В Ruby вы можете читать из файла, используя s = File.read(filename). Самый короткий и понятный из всех, что я знаю в Python, - это

with open(filename) as f:
    s = f.read()

. Есть ли другой способ сделать его еще более коротким (желательно одной строкой) и более читабельным?

Примечание: изначально я сформулировал вопрос как «делая это в одной строке кода». Как указывает С.Лотт, короткое не обязательно означает более читабельный. Поэтому я перефразировал свой вопрос, чтобы прояснить, что я имел в виду. Я думаю, что код на Ruby лучше и удобнее для чтения не обязательно, потому что это одна строка против двух (хотя это тоже важно), а также потому, что это метод класса, а не метод экземпляра, который не ставит вопрос о том, кто закрывает файл, как сделать так, чтобы он закрывался, даже если возникло исключение, и т. д. Как указано в ответах ниже, вы можете положиться на GC, чтобы закрыть файл (таким образом, сделав его однострочным), но это делает код еще хуже хотя это короче. Не только из-за непортативности, но и из-за неясности.

66
задан Michael 5 July 2019 в 09:49
поделиться