Python

Как читать и писать текстовые файлы в Python

Как читать и писать текстовые файлы в Python
В этой статье будет рассмотрено руководство, объясняющее обработку внешних файлов в python. Основное внимание будет уделяться открытию и закрытию текстовых и других файлов небинарных данных, хранящихся на носителе, что позволит вам выполнять различные операции с содержимым открытых файлов.

Открытие и закрытие файла

Чтобы прочитать данные из текстового файла с именем «data».txt », вам необходимо использовать метод« open », который поставляется с официальными сборками Python. Посмотрите пример кода ниже:

f = open ('данные.txt ',' r ')
ж.Закрыть()

Первый оператор открывает «данные.txt »в режиме« r »(только для чтения). Метод «open» принимает имя файла и режим обработки файла в качестве аргументов. Помимо режима «r», есть и другие режимы, которые будут объяснены позже. Приведенный выше фрагмент кода не выполняет никаких операций с открытым файлом. Метод «закрытия» используется для полного закрытия открытого файла, чтобы можно было освободить память и избежать повреждения данных в открытом файле, которое иногда может произойти, если файл не закрыт должным образом.

Вместо использования метода «open» для обработки открытия и закрытия файлов вы можете объединить его с ключевым словом «with» и использовать оператор «with open».

с открытыми ('данными.txt ',' r ') как f:
проходить

Основное преимущество использования оператора «с открытым» заключается в том, что интерпретатор автоматически закрывает открытый файл, когда блок кода «с открытым» полностью разбирается. Хотя сборщик мусора в Python автоматически закрывает открытые файлы через некоторое время в соответствии с предустановленными правилами, операторы «с открытием» гарантируют, что файл будет полностью закрыт, как только блок кода будет завершен, чтобы освободить ресурсы.

Чтение строк текстового файла

Чтобы прочитать содержимое файла, используйте приведенный ниже пример кода:

с открытыми ('данными.txt ',' r ') как f:
data = f.читать()
печать (данные)

Например, если «данные.txt »содержит от 1 до 10 чисел, каждое в новой строке, после выполнения приведенного выше кода вы получите следующий результат:

1
2
3
4
5
6
7
8
9
10

Полный дамп «data.txt »хранится в переменной« data ». Если вы хотите прочитать строки в списке, вы можете использовать следующие примеры кода:

с открытыми ('данными.txt ',' r ') как f:
data = f.readlines ()
print (data) с open ('data.txt ',' r ') как f:
данные = список (е)
печать (данные)

Обратите внимание, что использование приведенных выше фрагментов может привести к появлению символа «\ n» (новая строка) в конце каждого элемента в списке. Чтобы удалить эти символы новой строки, вам может потребоваться прокрутить список. Вы можете создать новый список и удалить символы новой строки, используя вместо этого следующий код:

data_list = []
с открытыми ('данными.txt ',' r ') как f:
для строки в f:
data_list.добавить (строка.полоска())
печать (список_данных)

Запустив приведенный выше код, вы получите следующий результат:

[«1», «2», «3», «4», «5», «6», «7», «8», «9», «10»]

Запись данных в открытый файл

Чтобы записать данные в открываемый файл с помощью оператора «with open», вам нужно будет указать другой режим открытия в качестве аргумента. Вот некоторые из режимов:

Некоторые фрагменты кода, использующие разные режимы для записи данных, перечислены ниже.

Чтобы записать новое содержимое в текстовый файл при удалении существующих данных, используйте следующий пример:

с открытыми ('данными.txt ',' w ') как f:
ж.написать ("1 \ n2")

После выполнения приведенного выше фрагмента 1–10 цифр в строке «data.txt »следует заменить двумя новыми строками.

Чтобы добавить строки в начало текстового файла, вам нужно использовать метод поиска, чтобы вернуться в начальную позицию файлового буфера:

с открытыми ('данными.txt ',' r + ') как f:
data = f.читать()
ж.искать (0)
ж.напишите ("- 1 \ n0 \ n")
ж.запись (данные)

После выполнения приведенного выше фрагмента числа -1 и 0 будут добавлены в две верхние строки в «data.txt »файлы.

Чтобы добавить данные в конец файла, используйте следующий пример:

с открытыми ('данными.txt ',' a ') как f:
ж.написать ("11 \ n12")

После запуска приведенного выше фрагмента в конец файла будут добавлены числа 11 и 12.

Заключение

Встроенные классы и методы в Python обеспечивают надежный способ обработки текстовых файлов. С помощью всего нескольких строк кода вы можете управлять существующими данными в файле, а также вставлять новые строки.

Как использовать AutoKey для автоматизации игр под Linux
AutoKey - это утилита автоматизации рабочего стола для Linux и X11, запрограммированная на Python 3, GTK и Qt. Используя его функции сценариев и MACRO...
Как показать счетчик FPS в играх для Linux
Игры для Linux получили серьезный толчок, когда Valve объявила о поддержке Linux для клиента Steam и своих игр в 2012 году. С тех пор многие игры AAA ...
Как загрузить и играть в Sid Meier's Civilization VI в Linux
Введение в игру Civilization 6 - это современный подход к классической концепции, представленной в серии игр Age of Empires. Идея была довольно просто...