80 likes | 229 Views
Программирование на Python. File Formats. Наталья Кочнева, 141 группа. Программирование на Python. Исходный текст: 1997,Ford,E350,"ac, abs, moon",3000.00 1999,Chevy,"Venture ""Extended Edition""","",4900.00 1996,Jeep,Grand Cherokee,"MUST SELL! air, moon roof, loaded",4799.00
E N D
Программирование на Python File Formats Наталья Кочнева, 141 группа
Программирование на Python Исходный текст: 1997,Ford,E350,"ac, abs, moon",3000.00 1999,Chevy,"Venture ""Extended Edition""","",4900.00 1996,Jeep,Grand Cherokee,"MUST SELL! air, moon roof, loaded",4799.00 Получаемая таблица: Csv (от англ. CommaSeparatedValues — значения, разделённые запятыми) - формат для текстового представления таблиц Наталья Кочнева, 141 группа
Программирование на Python • Существует несколько способов разделения – диалектов. • В Python для выбора диалекта есть специальные функции: • csv.register_dialect(name[, dialect][, fmtparam]) • csv.unregister_dialect(name) • csv.get_dialect(name) • csv.list_dialects() Csv-формат для текстового представления таблиц Наталья Кочнева, 141 группа
Программирование на Python • Так же для доступа к исходному текстовому файлу в Python существуют следующие функции и классы: • csv.reader(csvfile[, dialect='excel'][, fmtparam]) • class csv.DictReader(csvfile[, fieldnames=None[, restkey=None[, restval=None[, dialect='excel'[, *args, **kwds]]]]]) • class csv.DictWriter(csvfile, fieldnames[, restval=''[, extrasaction='raise'[, dialect='excel'[, *args, **kwds]]]]) • csv.writer(csvfile[, dialect='excel'][, fmtparam]) Csv-формат для текстового представления таблиц Наталья Кочнева, 141 группа
Программирование на Python • Файл ‘Zya.txt’: • "Year","Brand","Model","Commets","Price" • 1997,Ford,E350,"ac, abs, moon",3000.00 • 1999,Chevy,"Venture ""Extended Edition""","",4900.00 • Код: • importcsv • p = open('d:\\Zya.txt') • for s incsv.DictReader(p): • print s • #{'Price': '3000.00', 'Brand': 'Ford', 'Model': 'E350', 'Commets': 'ac, abs, moon', 'Year': '1997'} • #{'Price': '4900.00', 'Brand': 'Chevy', 'Model': 'Venture "Extended Edition"', 'Commets': '', 'Year': '1999'} Csv-формат для текстового представления таблиц Наталья Кочнева, 141 группа
Программирование на Python ConfigParser - модуль для чтения и записи конфигурационных файлов. Этот модуль написан на чистом Python и, следовательно, платформонезависим. Синтаксис конфигурационных файлов похож на тот, что используется в INI-файлах Windows. Например: [MySection] foodir=%(dir)s/whatever dir=frob version: 1.0 В качестве разделителя ключа и значения может использоваться = или :. При использовании классов ConfigParser и SafeConfigParser происходит замена строки %(<ключ>)s на значение параметра <ключ>. В указанном примере значение foodir будет равноfrob/whatever. Наталья Кочнева, 141 группа
Программирование на Python • Файл ‘Zya.cfg’: • [My Section] • foodir=%(dir)s/whatever • dir=frob • version: 1.0 • [The Best Section] • MyOption = KindOfBestOption • d = Hello • f = world!111 • Код: • importConfigParser, os • config = ConfigParser.ConfigParser() • config.readfp(open('D:\\Zya.cfg')) • for s inconfig.sections(): • printconfig.items(s) • #[('d', 'Hello'), ('myoption', 'KindOfBestOption'), ('f', 'world!111')] • #[('foodir', 'frob/whatever'), ('version', '1.0'), ('dir', 'frob')] ConfigParser - модуль для чтения и записи конфигурационных файлов Наталья Кочнева, 141 группа
Программирование на Python Подробнее обо всём этом можно прочитать здесь:http://docs.python.org/library/fileformats.htmlhttp://ru.wikipedia.org/wiki/CSVhttp://en.wikipedia.org/wiki/Comma-separated_valueshttp://en.wikipedia.org/wiki/INI_file Наталья Кочнева, 141 группа