Как использовать «с» в 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