Чтобы прочитать текстовый файл в Python, выполните следующие действия:
- Вызов встроенной функции open() с указанием пути к файлу и режима в качестве аргументов. Функция возвращает файловый объект.
- Вызвать метод read() для файлового объекта, который возвращает строку.
- Возвращенная строка – это полный текст из текстового файла.
Пример 1
В следующей программе в Python мы откроем файл sample.txt в режиме чтения. Мы прочитаем все содержимое текстового файла и выведем текст на консоль.
fileObject = open("sample.txt", "r")
data = fileObject.read()
print(data)
Вывод:
Welcome to pythonexamples.org
Вы можете указать полный или абсолютный путь к методу open() или указать относительный путь, если базовый путь присутствует в переменной среды PATH.
Пример 2: только чтение некоторых символов
Если вам нужно прочитать только определенное количество символов, скажем, количество символов N, присутствующее в начале файла, передайте N (число) в качестве аргумента метода read().
В следующей программе мы прочитаем первые 20 символов файла.
f = open("sample.txt", "r")
data = f.read(20)
print(data)
Вывод:
Welcome to pythonexa
Функция read (20) вернула первые 20 символов из текстового файла.
Пример 3: чтение в текстовом режиме
Режимы чтения, записи и выполнения зависят от разрешений. В зависимости от характера контента существуют текстовые и двоичные файлы.
В следующем примере мы явно откроем файл в текстовом режиме, указав «t» вместе с режимом «r» для чтения.
f = open("sample.txt", "rt")
data = f.read()
print(data)
Вывод:
Welcome to pythonexamples.org
Пример 4: построчное чтение
Чтобы прочитать текст построчно из файла, используйте функцию File.readline(), которая возвращает текущую строку и обновляет свой указатель на следующую строку. Итак, когда вы вызываете функцию readline() в следующий раз – возвращается следующая строка.
Помните, что readline() возвращает строку вместе с символом новой строки в конце строки, за исключением последней строки. Итак, если вам не нужен символ новой строки, вы можете использовать функцию strip(). Здесь есть одна загвоздка: если ваша строка содержит символы пробела в начале и в конце, и если вы используете strip(), вы потеряете эти символы пробела в строке.
В этом примере мы будем читать текстовый файл построчно.
#get file object
f = open("sample.txt", "r")
while(True):
#read next line
line = f.readline()
#if line is empty, you are done with all lines in the file
if not line:
break
#you can access the line
print(line.strip())
#close file
f.close
Вывод:
Hi User! Welcome to Python Examples. Continue Exploring.
В этом руководстве мы узнали, как читать текстовый файл в Python с помощью примеров программ. Похожий метод применяется в джава, когда надо считать построчно файл в Java.