Разбор одного столбца из csv в текстовый файл с использованием python

Наконец-то я получил файл dbf в формате csv, но теперь я не понимаю, как разобрать его в текстовый файл для дальнейшего редактирования.

Я читал о модуле csv, но, честно говоря, у меня закружилась голова. Мне многое казалось греческим. Тем не менее, я хотел бы код для использования модуля, если это возможно.

Мой файл car.csv выглядит так:

Name,Total,Freq
Toyota,2,2
Mazda,1,1
Kia,2,1
Volkswagon,3,1

Я хочу вывести следующее предложение в текстовый файл (или csv):

В этом районе на улице припаркованы Toyota, Mazda, Kia и Volkswagen.

Если результатов два, я не хочу запятых:

Автомобили.dbf

Toyota,2,2
Mazda,2,1

В этом районе на улице припаркованы Тойота и Мазда.

Автомобили.dbf

empty

В этом районе на улице нет машин.

Я получил хорошее предложение из предыдущего сообщения о построении предложений if-else, но не знаю, как анализировать столбцы (по какой-то причине они не отображались в Excel, я думал, что у меня есть только один столбец)

питон 2.7

КСТАТИ. Кто-нибудь знает хороший веб-сайт, который объясняет модуль csv в терминах, понятных новичку? Спасибо.


person user12059    schedule 23.02.2013    source источник


Ответы (3)


примеры документов Python всегда на месте.

Вы хотите что-то вроде этого:

import csv

makes = []
with open('cars.csv', 'rb') as f:
    reader = csv.reader(f)
    next(reader) # Ignore first row

    for row in reader:
        makes.append(row[0])

print makes
person Ric    schedule 23.02.2013

Используя модуль csv:

>>> with open('cars.csv') as f:
...    reader = csv.reader(f)
...    cars_list = [row[0] for row in reader]
...
>>> cars_list
['Name', 'Toyota', 'Mazda', 'Kia', 'Volkswagon']
person Joel Cornett    schedule 23.02.2013

если я правильно понимаю, у вас уже есть файл csv. Если это так, все, что вам нужно сделать, это прочитать его в любой функции, которую вы используете для его обработки. Вот пример:

def process_csv():
    with open('/path/to/file/car.csv') as f:
        for line in f:
            values_list = line.split(',') #gives you a list
            #process your the rest here.

По сути, это загружает ваш файл и создает список из каждой строки. Итак, для вашего Toyota,2,2 вы получите

> print('Name = " + values_list[0]) Name = Toyota

person chirinosky    schedule 23.02.2013