МАТЕМАТИЧЕСКИЕ ОСНОВЫ ИНФОРМАТИКИ
Четверг, 28.03.2024, 21:34
ГлавнаяРегистрацияВход Приветствую Вас Гость | RSS

Меню сайта

Категории раздела
Начало работы Python [3]
Примеры задач [9]

Наш опрос
Какой язык программирования Вы изучаете
Всего ответов: 1027

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа


Главная » Файлы » Python » Примеры задач

Работа с модулем csv
05.09.2015, 14:56

Запись и чтение файлов

Работа с модулем csv подробно http://ideafix.name/wp-content/uploads/2012/05/Python-7.pdf

 

Python. Лекция 7. Работа с данными

в различных форматах.

Формат CSV

Файл в формате CSV (comma-separated values - значения, разделенные запятыми) -

универсальное средство для переноса табличной информации между приложениями

(электронными таблицами, СУБД, адресными книгами и т.п.). К сожалению, формат

файла не имеет строго определенного стандарта, поэтому между файлами,

порождаемыми различными приложениями, существуют некоторые тонкие различия.

Внутри файл выглядит примерно так (файл pr.csv ):

name,number

a,1

b,2

c,3

Для работы с CSV-файлами имеются две основные функции:

reader(csvfile[, dialect='excel'[, fmtparam]])

Возвращает читающий объект, который является итератором по всем строкам

заданного файла. В качестве csvfile может выступать любой объект, который

поддерживает протокол итератора и возвращает строку при обращении к его методу

next(). Необязательный аргумент dialect, по умолчанию равный 'excel', указывает

на необходимость использования того или иного набора свойств. Узнать доступные

варианты можно с помощью csv.list_dialects(). Аргумент может быть одной из

строк, возвращаемых указанной функцией, либо экземпляром подкласса класса

csv.Dialect. Необязательный аргумент fmtparam служит для переназначения

отдельных свойств по сравнению с заданным параметром dialect набором. Все

получаемые данные являются строками.

writer(csvfile[, dialect='excel'[, fmtparam]])

Возвращает пишущий объект для записи пользовательских данных с

использованием разделителя в заданный файлоподобный объект. Параметры dialect и

fmtparam имеют тот же смысл, что и выше. Все данные, кроме строк, обрабатывают

функцией str() перед помещением в файл.

В следующем примере читается CSV-файл и записывается другой, где числа

второго столбца увеличены на единицу:

import csv
input_file = open("pr.csv", "rb")
rdr = csv.reader(input_file)
output_file = open("pr1.csv", "wb")
wrtr = csv.writer(output_file)
for rec in rdr:
    try:
        rec[1] = int(rec[1]) + 1
    except:
        pass
    wrtr.writerow(rec)
input_file.close()
output_file.close()

В результате получится файл pr1.csv следующего содержания:

name,number

a,2

b,3

c,4

 

Категория: Примеры задач | Добавил: i_elf
Просмотров: 2948 | Загрузок: 0 | Рейтинг: 0.0/0
Всего комментариев: 0
Поиск

Друзья сайта
  • Творческий учитель
  • Сайт ООАКМР
  • Школьный сайт
  • Информатика учебник
  • МОИ

  • Copyright MyCorp © 2024 Сделать бесплатный сайт с uCoz