Метод writelines() для файлов в Python3
writelines() — это метод файловых объектов в Python, используемый для записи списка строк (или любого итерируемого объекта) в файл.
иwrite()В отличие от метода write(), writelines() может записывать несколько строк за раз, но не добавляет автоматически символы новой строки.
Для переноса строк необходимо указать символы новой строки.\n。
Синтаксис
Синтаксис метода writelines() выглядит следующим образом:
fileObject.writelines( [ sequence ])
Parameters
fileObject: файловый объект, обычно получаемыйopen()полученный после открытия файла с помощью функции.sequence: итерируемый объект (например, список, кортеж и т. д.), каждый элемент которого должен быть строкой.Возвращаемое значение: нет возвращаемого значения (возвращает
None)。
Метод writelines() записывает все строки из итерируемого объекта в файл последовательно. Позиция записи зависит от текущей позиции указателя файла:
Если файл открыт в режиме добавления (
"a"или"a+") открыт, записанное содержимое будет добавлено в конец файла.Если файл открыт в режиме чтения-записи (
"r+"или"w+") открыт, записанное содержимое перезапишет существующее содержимое начиная с текущей позиции указателя файла.
Возвращаемое значение
Этот метод не имеет возвращаемого значения.
Пример
Следующий пример демонстрирует использование метода writelines():
Пример
# Используйте оператор with для открытия файла, чтобы гарантировать его правильное закрытие
with open("test.txt", "w") as fo:
print("Имя файла: ", fo.name)
seq = ["Example 1\n", "Example 2"]
fo.writelines(seq)
Вывод приведенного выше примера:
文件名为: test.txt
Просмотр содержимого файла:
$ cat test.txt Example 1 Example 2
Примечания
Не добавляет автоматически символы новой строки:
writelines()Он не добавляет автоматически символы новой строки в конце каждой строки. Если нужны разрывы строк, их необходимо явно добавить в каждую строку.\n。
Режим файла:
Если файл открыт в режиме только для чтения (
"r") открыт, вызовwritelines()выброситio.UnsupportedOperationисключение.Если файл открыт в режиме записи (
"w"или"w+") открыт, содержимое файла будет очищено, затем записывается новое содержимое.Если файл открыт в режиме добавления (
"a"или"a+") открыт, записанное содержимое будет добавлено в конец файла.
Указатель файла:
Операция записи начинается с текущей позиции указателя файла. Если вам нужно записать с начала файла или с определённой позиции, вы можете использовать
seek()метод для перемещения указателя файла.
Итерируемый объект:
sequenceЭто может быть любой итерируемый объект (например, список, кортеж, генератор и т. д.), но каждый его элемент должен быть строкой.
Другие расширения
Методы файлов Python3