При работе с файлами в Python часто возникает ситуация, когда необходимо открыть файл для записи, чтения или добавления новых данных. Для этого в Python используется встроенная функция open()
, которая принимает в качестве аргументов имя файла и режим доступа к файлу.
file = open("test.txt", "w")
В данном случае, файл «test.txt» открывается на запись с помощью режима «w». Но что значат остальные режимы, такие как «a», «w+», «a+» и «r+» и в чем между ними разница?
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Режим «w»
Режим «w» используется для открытия файла на запись. Если файл с таким именем существует, он будет очищен перед записью. Если файл с указанным именем не существует, он будет создан.
file = open("test.txt", "w") file.write("Hello, world!")
Режим «a»
Режим «a» также открывает файл на запись, но в отличие от режима «w», он добавляет данные в конец файла, не удаляя существующие. Если файл не существует, он будет создан.
file = open("test.txt", "a") file.write("Hello, again!")
Режим «w+»
Режим «w+» открывает файл на чтение и запись. Если файл существует, он будет очищен перед записью. Если файл не существует, он будет создан.
file = open("test.txt", "w+") file.write("Hello, world!") file.seek(0) print(file.read())
Режим «a+»
Режим «a+» также открывает файл на чтение и запись, но в отличие от режима «w+», он добавляет данные в конец файла, не удаляя существующие. Если файл не существует, он будет создан.
file = open("test.txt", "a+") file.write("Hello, again!") file.seek(0) print(file.read())
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Режим «r+»
Режим «r+» открывает файл на чтение и запись. Но в отличие от режимов «w+» и «a+», файл не будет создан, если он не существует, и запись будет производиться с начала файла, без очистки существующих данных.
file = open("test.txt", "r+") file.write("Hello, world!") file.seek(0) print(file.read())
Итак, основное различие между режимами заключается в том, что «w» и «w+» очищают файл перед записью, «a» и «a+» добавляют данные в конец файла, а «r+» позволяет записывать данные с начала файла без его очистки.
Добавить комментарий