>  기사  >  백엔드 개발  >  Python 지식 요약: csv 파일 쓰기 및 읽기

Python 지식 요약: csv 파일 쓰기 및 읽기

WBOY
WBOY앞으로
2022-04-02 12:53:102906검색

이 글은 주로 csv 파일 쓰기 및 읽기와 관련된 문제를 소개하는 python에 대한 관련 지식을 제공합니다. CSV는 숫자 또는 문자를 포함한 테이블 데이터를 저장하는 데 일반적으로 사용되는 텍스트 형식입니다.

Python 지식 요약: csv 파일 쓰기 및 읽기

추천 학습: python tutorial

CSV(Comma Separated Values)는 문자로 구분된 값(구분 기호가 쉼표가 아닐 수 있으므로 문자로 구분된 값이라고도 함)으로도 알려져 있습니다. 숫자나 문자를 포함하여 표 형식 데이터 저장에 일반적으로 사용되는 텍스트 형식입니다. 많은 프로그램에서는 데이터를 처리할 때 csv 형식의 파일을 접하게 됩니다. Python에는 csv 파일 읽기를 처리하는 데 특별히 사용되는 csv 모듈이 함께 제공됩니다.

csv writing

작성기 개체를 생성하면 두 가지 주요 메서드가 사용됩니다. 하나는 한 줄을 쓰는 writerow입니다. 다른 하나는 여러 줄을 쓰는 writerows입니다

DictWriter를 사용하여 사전을 사용하여 데이터를 씁니다

첫 번째 쓰기 방법(작성기 객체 생성)

첫 번째 쓰기 방법에 대해 먼저 이야기해 보겠습니다. 작가 객체를 생성하여 쓰기 (한 번에 한 행 쓰기)
단계 : 1. 데이터 및 헤더 생성 2. 작성기 개체 생성 3. 헤더 쓰기 4. 목록을 순회하고 각 데이터 행을 csv에 씁니다
코드는 다음과 같습니다.

import csv

person = [('xxx', 18, 193), ('yyy', 18, 182), ('zzz', 19, 185)]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8') as file_obj:
    # 1:创建writer对象
    writer = csv.writer(file_obj)
    # 2:写表头
    writer.writerow(header)
    # 3:遍历列表,将每一行的数据写入csv
    for p in person:
        writer.writerow(p)

쓰기 후에는 person.csv 파일이 현재 디렉터리에 나타납니다. Explorer에서 show를 마우스 오른쪽 버튼으로 클릭하면 person.csv를 열 수 있습니다.

Python 지식 요약: csv 파일 쓰기 및 읽기
Python 지식 요약: csv 파일 쓰기 및 읽기
Python 지식 요약: csv 파일 쓰기 및 읽기
열면 작성된 데이터에 다음 줄이 표시됩니다.
놀랍게도: 그러면 이 문제를 어떻게 해결해야 합니까
해커: 매우 간단합니다
데이터를 쓸 때 매개변수만 추가하면 됩니다 newline='' 개행 쓰기를 방지하려면
수정된 코드는 다음과 같습니다.

import csv# 数据person = [('xxx', 18, 193), ('yyy', 18, 182), ('zzz', 19, 185)]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8', newline='') as file_obj:
    # 创建对象
    writer = csv.writer(file_obj)
    # 写表头
    writer.writerow(header)
    # 遍历,将每一行的数据写入csv
    for p in person:
        writer.writerow(p)

Python 지식 요약: csv 파일 쓰기 및 읽기
✅작성기 객체 생성(한 번에 여러 행 쓰기)
단계: 1. 데이터 및 테이블 헤더 생성 2. 기록기 객체 생성 3. 테이블 헤더 쓰기 4. writerows에 원하는 내용 전달 처리된 데이터

import csv# 数据person = [('xxx', 18, 193), ('yyy', 18, 182), ('zzz', 19, 185)]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8', newline='') as file_obj:
    # 创建对象
    writer = csv.writer(file_obj)
    # 写表头
    writer.writerow(header)
    # 3.写入数据(一次性写入多行)
    writer.writerows(person)

쓰기 결과는 다음과 같습니다.

Python 지식 요약: csv 파일 쓰기 및 읽기

두 번째 쓰기 방법(DictWriter를 사용하면 사전을 사용하여 데이터를 쓸 수 있습니다)

참고: 사전을 사용하여 쓰기에 주의하세요. 전달된 데이터 형식은 사전이어야 합니다
사전이 아니면 오류가 보고됩니다

AttributeError: 'tuple' 객체에 'keys' 속성이 없습니다

단계1. 데이터 및 헤더를 생성해야 합니다. 사전 형식이어야 합니다 )2. DictWriter 객체 생성 3. 헤더 쓰기 4. 데이터 쓰기

import csv# 数据person = [
    {'name': 'xxx', 'age': 18, 'height': 193},
    {'name': 'yyy', 'age': 18, 'height': 182},
    {'name': 'zzz', 'age': 19, 'height': 185},]# 表头header = ['name', 'age', 'height']with open('person.csv', 'w', encoding='utf-8', newline='') as file_obj:
    # 1.创建DicetWriter对象
    dictWriter = csv.DictWriter(file_obj, header)
    # 2.写表头
    dictWriter.writeheader()
    # 3.写入数据(一次性写入多行)
    dictWriter.writerows(person)

Python 지식 요약: csv 파일 쓰기 및 읽기

CSV 읽기

reader()를 통해 읽기
import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj:
    # 1.创建reader对象
    reader = csv.reader(file_obj)
    print(reader)

직접 인쇄하는 경우 csv.reader 객체 가 반환되면

<_csv.reader>

)를 순회해야 합니다. 수정된 코드는 다음과 같습니다.

import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj:
    # 1.创建reader对象
    reader = csv.reader(file_obj)
    # 2.遍历进行读取数据
    for r in reader:
        print(r)
읽기 결과는 다음과 같습니다.

['name', 'age', 'height']['xxx', '18', '193']['yyy', '18', '182']['zzz', '19', '185']
원하는 경우 목록에서 특정 값을 인쇄하려면 인덱스 인쇄를 사용할 수 있습니다

print(r[0])
name
xxx
yyy
zzz

Read through dictreader()
import csvwith open('person.csv', 'r', encoding='utf-8') as file_obj:
    # 1.创建reader对象
    dictReader = csv.DictReader(file_obj)
    # 2.遍历进行读取数据
    for r in dictReader:
        print(r)

반환 결과는 다음과 같습니다.

OrderedDict([('name', 'xxx'), ('age', '18'), ('height', '193')])OrderedDict([('name', 'yyy'), ('age', '18'), ('height', '182')])OrderedDict([('name', 'zzz'), ('age', '19'), ('height', '185')])
특정 값을 얻으려면 다음을 지정해야 합니다. key to find the value

print(r['name'])
xxx
yyy
zzz
위는 Python 기본 튜토리얼에서 csv 파일을 작성하는 내용입니다. 입력하고 읽어보시고, 개선 사항이 있으면 댓글란에 남겨주세요~


추천 학습:

python 튜토리얼

위 내용은 Python 지식 요약: csv 파일 쓰기 및 읽기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제