Ниже приведены некоторые минимальные полные примеры того, как читать CSV-файлы и как писать файлы CSV с помощью Python.
Pure Python
# -*- coding: utf-8 -*-
import csv
import sys
# Define data
data = [(1, "A towel,", 1.0),
(42, " it says, ", 2.0),
(1337, "is about the most ", -1),
(0, "massively useful thing ", 123),
(-2, "an interstellar hitchhiker can have.", 3)]
# Write CSV file
kwargs = {'newline': ''}
mode = 'w'
if sys.version_info < (3, 0):
kwargs.pop('newline', None)
mode = 'wb'
with open('test.csv', mode, **kwargs) as fp:
writer = csv.writer(fp, delimiter=str(','))
# writer.writerow(["your", "header", "foo"]) # write header
writer.writerows(data)
# Read CSV file
kwargs = {'newline': ''}
mode = 'r'
if sys.version_info < (3, 0):
kwargs.pop('newline', None)
mode = 'rb'
with open('test.csv', mode, **kwargs) as fp:
reader = csv.reader(fp, delimiter=',', quotechar='"')
# next(reader, None) # skip the headers
data_read = [row for row in reader]
print(data_read)
После этого содержимое data_read
является
[['1', 'A towel,', '1.0'],
['42', ' it says, ', '2.0'],
['1337', 'is about the most ', '-1'],
['0', 'massively useful thing ', '123'],
['-2', 'an interstellar hitchhiker can have.', '3']]
Если вы хотите написать Unicode, у вас есть для установки Посмотрите мой пакет утилиты Для получения дополнительной информации см. Если вы не слышали о Seaborn , я рекомендую посмотреть на нем. Чтение CSV-файлов поддерживается рядом других библиотек, например: После прочтения файла CSV в списке кортежей / диктов или в кадре данных Pandas он просто работает с такими типами данные. Ничего особенного в CSV. Для вашего приложения может быть важно следующее: См. также: Сравнение форматов сериализации данных Если вы скорее ищете способ создания файлов конфигурации, вы можете прочитать мою короткую статью Файлы конфигурации в Python unicodecsv
. Не открывайте файл с помощью codecs.open
, а просто с помощью open
. mpu
mpu
для супер простого и легко запоминающегося: import mpu.io
data = mpu.io.read('example.csv', delimiter=',', quotechar='"', skiprows=None)
mpu.io.write('example.csv', data)
Pandas
import pandas as pd
# Read the CSV into a pandas data frame (df)
# With a df you can do many things
# most important: visualize data with Seaborn
df = pd.read_csv('myfile.csv', sep=',')
print(df)
# Or export it in many ways, e.g. a list of tuples
tuples = [tuple(x) for x in df.values]
# or export it as a list of dicts
dicts = df.to_dict().values()
read_csv
docs . Обратите внимание, что pandas автоматически появляется, если есть строка заголовка, но вы также можете установить ее вручную. Другое
Создан файл CSV
1,"A towel,",1.0
42," it says, ",2.0
1337,is about the most ,-1
0,massively useful thing ,123
-2,an interstellar hitchhiker can have.,3
Общие окончания файлов
.csv
Работа с данными
Альтернативы