Python

Обработка CSV-файлов в Python

Обработка CSV-файлов в Python
В этом разделе мы узнаем, как читать и записывать файлы CSV на Python.

Определение: CSV (значение, разделенное запятыми) похож на текстовый файл, в котором сохраненные данные разделены некоторым разделителем (обычно запятой). Каждое поле разделено разделителем. В Python файлы CSV обрабатываются с помощью модуля CSV. Итак, нам нужно импортировать этот модуль.

Бывший: import csv

В приведенном ниже примере показано, как данные хранятся в файле CSV. Здесь в качестве разделителя используется запятая.

Имя файла: person_info.csv
имя, отчество, фамилия, возраст
Ананд, кумар, математик, 31 год
Сачин, рамеш, тендулакар, 40
Вирендра, сехваг, сингх, 38
Рахул, дравид, xyz, 40

CSV-файл можно открыть в любом из следующих режимов:
r -> режим чтения
w -> режим записи
a -> режим добавления

В Python файловая операция выполняется в следующем порядке:

Откройте файл csv

Используется встроенный метод open ().

Бывший:

Закрытие файла

Используется встроенный метод close ().

fp = open ("имя файла.csv ", 'ш')
# выполнить некоторые файловые операции
fp.Закрыть()

Файловые операции с использованием

Лучший способ выполнить операцию с файлом CSV и наиболее часто используемый метод - это использовать оператор. Использование этого гарантирует, что файл будет закрыт при выходе из блока внутри с.

Бывший:

с открытым ('имя файла.csv ',' w ', encoding =' utf-8 ') как fp:
# выполнить некоторые файловые операции
# заявления вне блока with

Когда мы выходим с блоком, файл автоматически закрывается.

Записать в файл CSV

Чтобы записать в файл CSV, нам нужно открыть его в режиме записи 'w' или добавить 'a'.

В приведенном ниже примере мы собираемся читать из одного файла и записывать в новый файл.

импорт csv
с открытым ('имя файла.csv ',' r ') как fp:
reader = csv.reader (fp) # читать файл
с открытым ('новое имя файла.csv ',' w ') как fq:
писатель = csv.писатель (fq, delimiter = '-')
для строки в считывателе: # Чтобы перебрать каждую строку
писатель.writerow (line) # записать строку в новый файл

Использование словаря

В приведенном ниже примере мы собираемся читать из одного файла и записывать в новый файл с помощью метода DictWriter ().

импорт csv
с открытым ('имя файла.csv ',' r ') как fp:
reader = csv.DictReader (fp) # читать файл
с открытым ('новое имя файла.csv ',' w ', newline = ") как fq: #newline =", чтобы избежать добавления новой строки
row_names = ['имя', 'отчество', 'фамилия', 'возраст']
писатель = csv.DictWriter (fq, fieldnames = row_names, delimiter = '-')
писатель.writeheader () # записываем строки заголовка
для строки в ридере:
писатель.Writerow (строка)

Writerows ()

Этот метод записывает несколько строк за раз; нам нужно передать список списков. Бывший:

импорт csv
head_names = ['имя', 'отчество', 'фамилия', 'возраст']
# строки данных csv файла
rows = [['Ананд', 'кумар', 'математика', 31],
['Сачин', 'рамеш', 'тендулакар', 40],
['Вирендра', 'сехваг', 'сингх', 38],
['Рахул', 'дравид', 'xyz', 40]]
# запись в файл csv
с открытым ('новое имя файла.csv ',' w ') как fp:
# создание объекта записи csv
csvwriter = csv.писатель (fp)
# напишите заголовок
csvwriter.writerow (head_names)
# записываем строки данных
csvwriter.writerows (строки)

Чтение из файла

Чтобы прочитать файл CSV в Python, мы должны открыть файл в режиме чтения 'r'. Бывший:

импорт csv
с открытым ('имя файла.csv ',' r ') как fp:
data = csv.читатель (fp)
# разделитель по умолчанию - запятая, если CSV, разделенный другим разделителем, необходимо указать
#Ex data = csv.читатель (fp, delimiter = '-')
print (data) # возвращает объект
# пропуск заголовка
next (data) # вызвать следующий метод генератора
для строки в данных: # Чтобы перебрать каждую строку
print (line) # распечатать каждое значение в списке
fp.seek (0) # подвести курсор к первой строке
для строки в данных:
print (line [0]) # выводить только имена

Использование словаря

Чтобы прочитать файл csv с помощью метода DictReader ().

импорт csv
с открытым ('имя файла.csv ',' r ') как fp:
reader = csv.DictReader (fp) # читать файл
для строки в ридере:
print (line) # выводим каждую строку в виде двоичного
fp.seek (0) # подвести курсор к первой строке
для данных в считывателе:
print (data ['age']) # мы можем вывести только возраст, используя ключ 'age'

Заключение

Мы научились читать и записывать файл с помощью модуля CSV. CSV-файл является наиболее часто используемым форматом файлов в индустрии автоматизации, поскольку его легко читать и изменять данные. Кроме того, Pandas - еще один метод, который мы можем использовать для обработки файлов CSV.

5 лучших аркад для Linux
В настоящее время компьютеры - это серьезные машины, используемые для игр. Если вы не можете получить новый рекорд, вы поймете, о чем я. В этом посте ...
Битва за Веснот 1.13.6 Выпущена разработка
Битва за Веснот 1.13.6, выпущенная в прошлом месяце, является шестой разработкой в ​​1.13.x и содержит ряд улучшений, в первую очередь пользовательско...
Как установить League Of Legends на Ubuntu 14.04
Если вы поклонник League of Legends, то это возможность для вас протестировать League of Legends. Обратите внимание, что LOL поддерживается в PlayOnLi...