Работа с файлами
Открытие файла
В первом параметре указывается путь к файлу.
Скрипт находится в C:\Python3.7\my_file
Значение второго параметра mode
Закрытие файла в Python. Метод close().
Менеджер (контекста) with .. as
WITH ... AS удобно использовать при открытии файла(вместо open – close), так как гарантирует закрытие файла в любом случае.
file.readline()
Метод file.readlines()
Метод read()
Следует помнить, что считываемый файл может быть большим. В таком случае считывать его целиком нецелесообразно — он может не
Метод write()
207.50K
Категория: ПрограммированиеПрограммирование

Файлы (3) (1)

1. Работа с файлами

2. Открытие файла

Прежде чем работать с файлом, необходимо
создать объект файла с помощью функции open ().
Функция имеет следующий формат:
open(<Путь к файлу>[, mode = 'r'] [, buffering=-1]
[, encoding=None] [, errors=None] [,
newline=None] [, closefd=True])

3.

Открытие файла осуществляется функцией
open, которой нужно передать два параметра.
Первый параметр (можно также
использовать именованный параметр file)
имеет значение типа str, в котором записано
имя открываемого файла.

4. В первом параметре указывается путь к файлу.

"C:\temp\new\file.txt"
# Неправильно!!!
"C:\\temp\\new\\file.txt" # Правильно
r"C:\temp\new\file.txt" # Правильно

5. Скрипт находится в C:\Python3.7\my_file

"file.txt" - откроет файл из папки, где
сохранен файл(*.py) программы
"new\file.txt" - откроет файл из папки
new, которая находится в папке, где
сохранен файл(*.py) программы
«..\file.txt" - откроет файл из папки на
уровень выше папки, где сохранен
файл(*.py) программы

6.

Второй параметр (можно также использовать
именованный параметр mode) —это значение
типа str.

7. Значение второго параметра mode

'r'
'w'
'x'
'a'
Read. открытие на чтение (является значением по
умолчанию).
Write. открытие на запись, содержимое файла
удаляется, если файла не существует, создается
новый.
открытие на запись, если файла не существует,
иначе исключение.
Append. открытие на дозапись, информация
добавляется в конец файла.

8.

'b'
't'
'+'
Binary. открытие в двоичном режиме.
открытие в текстовом режиме (является
значением по умолчанию).
открытие на чтение и запись
Режимы могут быть объединены, то есть, к примеру,
'rb' - чтение в двоичном режиме.
По умолчанию режим равен 'rt'.
Также могут быть:
rb+, wb, wb+,ab,ab+

9. Закрытие файла в Python. Метод close().

Метод файлового объекта close() автоматически закрывает
файл, при этом теряется любая несохраненная информация.
Работать с файлом (читать, записывать) после этого нельзя.
Python автоматически закрывает файл если файловый объект к
которому он привязан присваивается другому файлу. Однако,
хорошей практикой будет вручную закрывать файл командой
close().
Следует всегда закрывать дескриптор файла, так как
неизвестно когда и какая именно программа захочет получить
к нему доступ. Закрытие файла также поможет сохранить
память и избежать появления странных багов в программе.

10. Менеджер (контекста) with .. as

Конструкция with ... as используется для оборачивания
выполнения блока инструкций менеджером контекста.
Синтаксис конструкции with ... as:
"with" expression ["as" target] ("," expression ["as" target])* ":"
suite
# (выражение.. как цель)

11. WITH ... AS удобно использовать при открытии файла(вместо open – close), так как гарантирует закрытие файла в любом случае.

with open("x.txt") as f:
suite
with A() as a, B() as b:
suite
эквивалентно
with A() as a:
with B() as b:
suite

12. file.readline()

f. readline() читает одну строку из файла, завершая символом
перевода строки(\n).
with open('..\m_f2.txt') as f:
line = f.readline()
while line:
print (line,end=''),
line = f.readline()

13. Метод file.readlines()

Используется для чтения всех строк (до конца символа EOF) и
возвращает список всех строк.
Если вы попали в конец символа EOF возвращается пустая строка.
fileObject.readlines( sizehint )
sizehint - количество байтов , считанных из файла.
with open(‘file.txt') as f:
for line in f.readlines():
x = int(line)
print (x*x)
with open(‘file.txt') as f:
for line in f:
x = int(line)
print (x*x)

14. Метод read()

Читает указанный файл полностью и возвращает нам его содержимое в
виде строки. После достижения конца файла, метод возвращает пустую
строку.
file.read(size) size : Число — максимальное количество данных,
которое требуется считать. Если параметр не задан, либо число
отрицательное, содержимое файла будет считано полностью.
f = open(‘file.txt')
print(f.read())
# или так
print(open(‘file.txt').read())

15. Следует помнить, что считываемый файл может быть большим. В таком случае считывать его целиком нецелесообразно — он может не

уместиться в
оперативной памяти.
with open('my_file.txt') as f:
f.read() # 'The only line in file.\n'
f.read() # ' '
with open('my_file.txt') as f:
f.read(5) # 'The o'
f.read(3) # 'nly'

16. Метод write()

with open (‘input.txt') as f, open('output.txt', 'w') as f1:
f1.write(‘Hello world!’)
# записывает только в формате str!!!

17.

f = open('..\m_f2.txt','w')
f.write('MY_TEXT33355\n')
f.close()

18.

• https://yandex.ru/video/search?filmId=13272862887773907974&tex
t=%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%20%D1%81%
20%D1%84%D0%B0%D0%B9%D0%BB%D0%B0%D0%BC%D0%B8%20
python
• https://youtu.be/x0uLRYhdKok
• https://youtu.be/_N-Z0hhMjfY
• http://gorodovets.blogspot.com/2013/07/python_27.html
• https://pythlife.blogspot.com/2012/10/blog-post.html
English     Русский Правила