데이터 읽기 및 쓰기: Python은 CSV 파일을 읽고 씁니다.

1. CSV 파일 읽기

csv.reader()

이 메서드의 기능은 데이터를 csv 형식으로 ','분할하고 .

import csv
with open('data.csv',mode='r',encoding='utf-8-sig',newline='') as File:
    # 使用csv.reader()将文件中的每行数据读入到一个列表中
    reader = csv.reader(File, delimiter=',', quotechar=',', quoting=csv.QUOTE_MINIMAL)
    # 遍历列表将数据按行输出
    for row in reader:
        print(row)            

여기에 이미지 설명 삽입

인덱스를 통해 데이터 각 행의 열 요소에 직접 액세스

for row in reader:
    print(row[0])

여기에 이미지 설명 삽입

csv.DictReader()

이 메서드는 파일의 각 데이터 줄을 OrderedDict에 저장합니다. 이 데이터 유형은 중첩된 튜플 목록과 유사합니다. 각 튜플의 첫 번째 요소는 키이고 두 번째 요소는 값입니다. CSV 데이터의 헤더 정보에서.

import csv
results = []
with open('data.csv',mode='r',encoding='utf-8-sig',newline='') as File:
    reader = csv.DictReader(File)
    for row in reader:
        print(row)

여기에 이미지 설명 삽입

키 값으로 일부 정보 읽기

    for row in reader:
        print(row['MakeSpan'],row['WaitTime'])

여기에 이미지 설명 삽입

DictReader()에 대한 자세한 내용은 아직 학습되지 않았습니다. 필요한 경우 다른 문서를 참조하십시오. CSV.DictReader() 메서드

2. CSV 파일에 쓰기

  1. 먼저 csv를 읽고 쓰는 데 필요한 패키지를 가져와야 합니다.
import csv
  1. open() 함수를 사용하여 파일을 열고 open() 함수에서 일반적으로 사용되는 매개변수:

    파일: 파일 경로, 파일 이름

    모드: 오픈 모드, r(읽기 전용), w(쓰기 전용), a(추가 모드)

    newline: 각 줄 사이에 빈 줄이 있는지 여부, 기본적으로 빈 줄이 있음, ' ': 빈 줄 없음.

myFile = open('example2.csv', 'w', newline='')
  1. CSV에 데이터를 쓰기 위한 csv.writer 모듈:

    csvfile: 메서드가 있는 모든 객체가 될 수 있습니다 write().
    dialect='excel': 특정 CSV에 특정한 매개변수 집합을 정의하는 선택적 매개변수입니다.
    fmtparam: 기존 서식 매개변수를 재정의하는 데 사용할 수 있는 선택적 매개변수입니다.

writer = csv.writer(myFile)
  1. writerow() 및 writerows()를 사용하여 데이터를 CSV 파일에 씁니다.

    writerow(): csv 파일의 행에 데이터를 저장하고 각 요소는 셀을 차지합니다.

    writerows(): 데이터의 각 목록을 CSV 파일의 행에 저장하고 목록의 각 요소는 셀을 차지합니다.

myData1 = [["这", "是", "writerow", "的", "效", "果"],
           ["这", "是", "writerow", "的", "效", "果"],
           ["这", "是", "writerow", "的", "效", "果"]]
           
myData2 = [["这", "是", "writerows", "的", "效", "果"],
           ["这", "是", "writerows", "的", "效", "果"],
           ["这", "是", "writerows", "的", "效", "果"]]

myFile = open('example2.csv', 'w', newline='')
with myFile:
    writer = csv.writer(myFile)
    
    writer.writerow(myData1) 
    writer.writerows(myData2) 

파일에 쓴 후의 효과는 다음과 같습니다.
여기에 이미지 설명 삽입

추천

출처blog.csdn.net/qq_33021529/article/details/125467793