- Как прочитать файл построчно в Python
- Пример 1: Чтение файла построчно функцией readline()
- Как использовать функцию file.readline()
- Пример 2: Чтение строк как список функцией readlines()
- Пример 3: Считываем файл построчно из объекта File
- Как прочитать текстовый файл в список в Python (с примерами)
- Пример 1: Чтение текстового файла в список с помощью open()
- Пример 2: Чтение текстового файла в список с помощью loadtxt()
- Дополнительные ресурсы
Как прочитать файл построчно в Python
Существует много способов чтение из файла построчно в Python. Вы можете считать строки в список или обращаться к каждой из строк в цикле при помощи итератора или вызова функции объекта file.
В этом руководстве мы научимся считывать файл построчно, используя функции readline() , readlines() и объект файла на примерах различных программ.
Пример 1: Чтение файла построчно функцией readline()
В этом примере мы будем использовать функцию readline() для файлового объекта, получая каждую строку в цикле.
Как использовать функцию file.readline()
Следуйте пунктам приведенным ниже для того, чтобы считать файл построчно, используя функцию readline() .
- Открываем файл в режиме чтения. При этом возвращается дескриптор файла.
- Создаём бесконечный цикл while.
- В каждой итерации считываем строку файла при помощи readline() .
- Если строка не пустая, то выводим её и переходим к следующей. Вы можете проверить это, используя конструкцию if not . В противном случае файл больше не имеет строк и мы останавливаем цикл с помощью break .
# получим объект файла file1 = open("sample.txt", "r") while True: # считываем строку line = file1.readline() # прерываем цикл, если строка пустая if not line: break # выводим строку print(line.strip()) # закрываем файл file1.close
Привет! Добро пожаловать на PythonRu. Удачи в обучении!
Пример 2: Чтение строк как список функцией readlines()
Функция readlines() возвращает все строки файла в виде списка. Мы можем пройтись по списку и получить доступ к каждой строке.
В следующей программе мы должны открыть текстовый файл и получить список всех его строк, используя функцию readlines() . После этого мы используем цикл for, чтобы обойти данный список.
# получим объект файла file1 = open("sample.txt", "r") # считываем все строки lines = file1.readlines() # итерация по строкам for line in lines: print(line.strip()) # закрываем файл file1.close
Привет! Добро пожаловать на PythonRu. Удачи в обучении!
Пример 3: Считываем файл построчно из объекта File
В нашем первом примере, мы считываем каждую строку файла при помощи бесконечного цикла while и функции readline() . Но Вы можете использовать цикл for для файлового объекта, чтобы в каждой итерации цикла получать строку, пока не будет достигнут конец файла.
Ниже приводится программа, демонстрирующая применение оператора for-in, для того, чтобы перебрать строки файла.
Для демонстрации откроем файл с помощью with open. Это применимо и к предыдущим двум примерам.
Как прочитать текстовый файл в список в Python (с примерами)
Вы можете использовать один из следующих двух методов для чтения текстового файла в список в Python:
Способ 1: Используйте open()
#define text file to open my_file = open('my_data.txt', 'r') #read text file into list data = my_file.read()
Способ 2: использовать loadtxt()
from numpy import loadtxt #read text file into NumPy array data = loadtxt('my_data.txt')
В следующих примерах показано, как использовать каждый метод на практике.
Пример 1: Чтение текстового файла в список с помощью open()
В следующем коде показано, как использовать функцию open() для чтения текстового файла с именем my_data.txt в список в Python:
#define text file to open my_file = open('my_data.txt', 'r') #read text file into list data = my_file.read() #display content of text file print(data) 4 6 6 8 9 12 16 17 19
Пример 2: Чтение текстового файла в список с помощью loadtxt()
В следующем коде показано, как использовать функцию NumPy loadtxt() для чтения текстового файла с именем my_data.txt в массив NumPy:
from numpy import loadtxt #import text file into NumPy array data = loadtxt('my_data.txt') #display content of text file print(data) [ 4. 6. 6. 8. 9. 12. 16. 17. 19.] #display data type of NumPy array print(data. dtype ) float64
Хорошая вещь в использовании loadtxt() заключается в том, что мы можем указать тип данных при импорте текстового файла с помощью аргумента dtype .
Например, мы можем указать текстовый файл для импорта в массив NumPy как целое число:
from numpy import loadtxt #import text file into NumPy array as integer data = loadtxt('my_data.txt', dtype='int') #display content of text file print(data) [ 4 6 6 8 9 12 16 17 19] #display data type of NumPy array print(data. dtype ) int64
Примечание.Полную документацию по функции loadtxt() можно найти здесь .
Дополнительные ресурсы
Следующие руководства объясняют, как читать другие файлы в Python: