>  기사  >  백엔드 개발  >  기존 값을 유지하면서 CSV 파일에 새 열을 추가하는 방법은 무엇입니까?

기존 값을 유지하면서 CSV 파일에 새 열을 추가하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-21 21:12:02302검색

How to Add a New Column to a CSV File Preserving Existing Values?

CSV 파일에 새 열 추가

이 문서에서는 "이름"과 "코드"라는 레이블이 붙은 두 개의 기존 열을 사용하여 형식을 지정합니다. 원하는 출력은 "Berry"라는 세 번째 열을 추가하고 해당 값을 "Name" 값으로 채우는 것입니다.

csv 라이브러리를 사용하는 초기 Python 스크립트는 각 행에 'Berry' 값을 추가하려고 시도했습니다. 하지만 새 열만 'Berry' 값으로 채워지는 오류가 발생했습니다.

해결책

답변 섹션에 제시된 권장 코드는 포괄적인 해결책을 제공합니다.

  • 입력 CSV 파일의 첫 번째 행을 읽고 헤더 'berry'를 추가합니다.
  • 나머지 줄을 반복하고 각 행에 첫 번째 값(이름)을 추가합니다.
  • 수정된 모든 행을 출력 CSV 파일에 씁니다.

구현

다음은 제공된 솔루션:

<code class="python">import csv

with open('input.csv', 'r') as infile, open('output.csv', 'w') as outfile:
    reader = csv.reader(infile)
    header = next(reader)
    header.append('Berry')
    writer = csv.writer(outfile)
    writer.writerow(header)

    for row in reader:
        row.append(row[0])
        writer.writerow(row)</code>

이 스크립트는 해당 "이름" 값으로 채워진 새 "Berry" 열을 각 행에 성공적으로 추가합니다.

추가 고려 사항

  • Python csv 라이브러리의 기본 줄 종결자는 'rn'이므로 출력 파일에 이중 공백이 발생할 수 있다는 점에 유의하세요. 다른 줄 종결자를 지정하려면 CSV 파일 작성 중에 lineterminator 매개변수를 사용하세요.
  • 수정된 모든 행을 저장하고 writerows를 사용하여 한 번의 작업으로 작성하려면 목록을 사용하는 것을 고려해 보세요. 이 접근 방식은 대용량 파일의 경우 더 효율적일 수 있습니다.
  • 다음 예와 같이 with 문은 한 줄의 여러 파일에 사용할 수 있습니다.

    <code class="python">with open('input.csv', 'r') as infile, open('output.csv', 'w') as outfile:
      # file operations</code>

위 내용은 기존 값을 유지하면서 CSV 파일에 새 열을 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.