csv 모듈을 사용하여 csv 파일에서 특정 열을 읽으시겠습니까?

| | | | | | | | | | | | | | | | | | | |

csv 파일을 구문 분석하고 특정 열에서만 데이터를 추출하려고 합니다.

csv의 예:

< 코드>ID | 이름 | 주소 | 시 | 주 | 우편번호 | 전화번호 | OPEID | IPEDS | 10 | C... | 130 W.. | Mo.. | AL... | 3.. | 334.. | 01023 | 10063 | 

ID, Name, Zip 및 Phone.

내가 본 코드는 해당 번호로 특정 열을 부를 수 있다고 믿게 했습니다. 예: 이름2에 해당하고 row[2]를 사용하여 각 행을 반복하면 열 2의 모든 항목이 생성됩니다. >지금까지 수행한 작업은 다음과 같습니다.

설정에서 sys, argparse, csv 가져오기 import * # 명령 인수 parser = argparse.ArgumentParser(description="csv to postgres", fromfile_prefix_chars ="@" ) parser.add_argument("파일", help="가져올 csv 파일", 작업 ="store") args = parser.parse_args() csv_file = args.file # open(csv_file, "rb")을 csvfile로 사용하여 csv 파일 열기: # csvfile.readlines()에서 행의 열 수 가져오기: array = line .split(",") first_item = array[0] num_columns = len(array) csvfile.seek(0) 리더 = csv.reader(csvfile, delimiter=" ") included_cols = [1, 2, 6, 7] for row in reader: content = list(row[i] for i in included_cols) print content 

다음을 제외하고 각 행에 대해 원하는 특정 열만 인쇄할 것으로 예상합니다. 그렇지 않습니다. 마지막 열만 가져옵니다.