Как использовать «с» в Python для открытия файлов (включая примеры)

Как использовать «с» в Python для открытия файлов (включая примеры)

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

file = open('my_data.csv')

df = file.read()

print(df)

file.close ()

Проблема с этим подходом в том, что очень легко забыть закрыть файл.

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

with open('my_data.csv') as file:

 df = file.read()

 print(df)

При таком подходе файл, с которым вы работаете, автоматически закрывается, поэтому вам не нужно помнить об использовании file.close() .

В следующих примерах показано, как использовать open в различных сценариях.

Пример 1. Использование оператора With для чтения файла

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

with open('my_data.csv') as file:

 df = file.read()

 print(df)

,points,assists,rebounds
0,11,5,6
1,17,7,8
2,16,7,8
3,18,9,10
4,22,12,14
5,25,9,12
6,26,9,12
7,24,4,10
8,29,8,11

Содержимое файла печатается, и файл автоматически закрывается без ввода нами file.close() .

Пример 2: Использование оператора With для записи файла

В следующем коде показано, как использовать оператор with для записи текста в файл:

with open('data_out.csv', 'w') as file:

 file.write('Some text to write to CSV file')

Обратите внимание, что ' w ' в операторе open() указывает Python использовать режим "записи" с файлом, а не режим чтения.

Пример 3. Использование оператора With для чтения и записи файлов

Мы также можем открыть несколько файлов одновременно с помощью одного оператора with.

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

with open('my_data.csv', 'r') as infile, open('data_out.csv', 'w') as outfile:
 for line in infile:
 outfile.write (line)

Если мы перейдем к месту, где мы написали «data_out.csv», мы сможем просмотреть содержимое файла:

Обратите внимание, что мы можем использовать функцию open() для открытия любого количества файлов в рамках одного оператора with.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в Python:

Как читать файлы CSV с помощью Pandas
Как читать файлы Excel с помощью Pandas
Как читать текстовые файлы с помощью Pandas

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.