2013-02-23 4 views
1

필자는 dbf 파일을 CSV로 만들었지 만 이제 이것을 편집하여 텍스트 파일로 구문 분석하는 방법에 대해 혼란 스럽습니다.파이썬을 사용하여 csv에서 텍스트 파일로 구문 분석

나는 CSV 모듈을 읽고 있었지만 솔직히 말해서 내 머리가 회전하기 시작했다. 그렇게 많은 것은 나에게 그리스어처럼 보였다. 그러나 가능한 경우 모듈을 사용하기위한 코드를 원합니다.

내 car.csv 파일은 다음과 같다 :

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

내가 텍스트 파일 (또는 CSV)으로 출력에 다음과 같은 문장을 원하는 :

이 지역 내에서이 도요타, 마쓰다, 기아와 폭스 바겐은 거리에 주차했다.

결과 두 경우 내가 원하지 않는 쉼표 :이 지역 내에서

Cars.dbf

Toyota,2,2 
Mazda,2,1 

가 도요타와 마쓰다 거리에 주차.

Cars.dbf

empty 

이 지역 내에서 거리에 주차에는 차량이 없습니다.

if-else 문장을 구성하는 이전 게시물에서 좋은 제안을 얻었으나 열을 구문 분석하는 방법에 대해 분실했습니다 (Excel에서 어떤 이유로 든 나타나지 않았고 한 열만 있다고 생각했습니다)

파이썬 2.7

BTW. 총 초보자가 이해할 수있는 측면에서 csv 모듈을 설명하는 좋은 웹 사이트를 아는 사람이 누구입니까? 감사.

답변

0

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'] 
2

Python doc examples 항상 배치 갈 수 있습니다.

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 
0

내가 제대로 이해하고있어 경우, 당신은 이미 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

로 끝날 것