CSVμ κ°λ κ³Ό νμ΄μ¬ νμ©λ²
CSV(Comma-Separated Values)
λ κ°λ¨ν ν
μ€νΈ νμμΌλ‘ λ°μ΄ν°λ₯Ό μ μ₯νκ³ κ΅ννλ λ° μ¬μ©λ©λλ€.
CSV νμΌμ ν νμμ λ°μ΄ν°λ₯Ό ν
μ€νΈλ‘ μ μ₯νλ©°, κ° λ°μ΄ν° νλλ μΌν(,)
λ‘ κ΅¬λΆλ©λλ€.
μ΄λ¦,λμ΄,λμ νκΈΈλ,24,μμΈ λ°λ―Όμ£Ό,30,λΆμ°
CSVλ μ€νλ λμνΈ νλ‘κ·Έλ¨(μ: Microsoft Excel, Google Sheets) λ° λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬ μμ€ν κ³Ό νΈνλ©λλ€.
CSVμ κΈ°λ³Έ ꡬ쑰
ν€λ
: νμΌμ 첫 λ²μ§Έ μ€μ μ΅μ
μΌλ‘, κ° μ΄(column)μ μ΄λ¦μ ν¬ν¨ν μ μμ΅λλ€. ν€λλ λ°μ΄ν°λ₯Ό ν΄μνλ λ° λμμ μ€λλ€.
λ μ½λ(ν)
: κ° νμ νλμ λ°μ΄ν° λ μ½λλ₯Ό λνλ
λλ€. μΌλ°μ μΌλ‘ λ°μ΄ν°λ² μ΄μ€μ νλμ μνΈλ¦¬λ κ°μ²΄λ₯Ό μλ―Έν©λλ€.
νλ(μ΄)
: ν λ΄μ κ° λ°μ΄ν° νλͺ©μ νλλΌκ³ νλ©°, μΌνλ‘ κ΅¬λΆλ©λλ€. μ΄ νλλ€μ κ°κ°μ λ°μ΄ν° ν¬μΈνΈλ₯Ό λνλ
λλ€.
CSV νμΌ μ½κΈ° λ° μ°κΈ°
νμ΄μ¬μ csv
λ΄μ₯ λͺ¨λμ μ¬μ©νλ©΄ CSV νμΌμ μ½κ² μ½κ³ μΈ μ μμ΅λλ€.
csv.reader
: CSV νμΌ μ½κΈ°
csv.reader
λ CSV νμΌμ μ½κΈ° μν κ°μ²΄λ₯Ό μμ±ν©λλ€.
μ΄ κ°μ²΄λ νμΌ λ΄μ κ° λ μ½λ(ν)μ μννλ©°, κ° λ μ½λλ₯Ό νλ(μ΄)μ 리μ€νΈλ‘ λ³ννμ¬ λ°νν©λλ€. κΈ°λ³Έμ μΌλ‘ λ°μ΄ν°λ μΌνλ‘ κ΅¬λΆλμ§λ§, λ€λ₯Έ ꡬλΆμλ μ§μ ν μ μμ΅λλ€.
import csv with open('example.csv', 'r', newline='') as file: reader = csv.reader(file) for row in reader: print(row)
μ μ½λλ example.csv νμΌμ μ΄κ³ , νμΌμ κ° νμ μΆλ ₯ν©λλ€.
newline=''λ νμΌμ μ΄ λ κΆμ₯λλ λ°©μμΌλ‘, νλ«νΌμ κ΄κ³μμ΄ μΌκ΄λ κ°ν λ¬Έμ(μ€λ°κΏ) μ²λ¦¬λ₯Ό μν΄ μ¬μ©λ©λλ€.
csv.writer
: CSV νμΌ μ°κΈ°
csv.writer
λ CSV νμΌμ λ°μ΄ν°λ₯Ό μ°κΈ° μν κ°μ²΄λ₯Ό μμ±ν©λλ€.
μ΄ κ°μ²΄λ₯Ό μ¬μ©νμ¬ λ°μ΄ν° νλλ₯Ό ν¬ν¨ν νμ CSV νμΌμ μΈ μ μμ΅λλ€. csv.writer μμ κΈ°λ³Έμ μΌλ‘ μΌνλ₯Ό νλ ꡬλΆμλ‘ μ¬μ©νμ§λ§, νμμ λ°λΌ λ³κ²½ν μ μμ΅λλ€.
import csv with open('output.csv', 'w', newline='') as file: writer = csv.writer(file) writer.writerow(['name', 'age', 'city']) writer.writerow(['John Doe', '30', 'New York']) writer.writerow(['Jane Smith', '25', 'Los Angeles'])
μ΄ μ½λλ μλ‘μ΄ output.csv νμΌμ μμ±νκ³ , κ° νμ λ°μ΄ν°λ₯Ό μ°κΈ° μν΄ writerow λ©μλλ₯Ό μ¬μ©ν©λλ€.
첫 λ²μ§Έ writerow νΈμΆμ ν€λ
νμ μμ±νκ³ , μ΄ν νΈμΆμμλ λ°μ΄ν° νμ μΆκ°ν©λλ€.
csv λͺ¨λμ λ€λ₯Έ κΈ°λ₯λ€
-
csv.DictReader
: CSV νμΌμ λμ λ리 κ°μ²΄λ‘ μ½μ΄λ€μ λλ€. -
csv.DictWriter
: μ¬μ κ°μ²΄λ₯Ό CSV νμΌλ‘ μμ±ν©λλ€.
DictReader, DictWriter μμ
# λμΌν νμΌ κ²½λ‘μ xample.csv νμΌμ λμ λλ¦¬λ‘ μ½κΈ° with open('example.csv', 'r') as file: csv_reader = csv.DictReader(file) # κ° νμ μΆλ ₯ for row in csv_reader: print(row) # νλλͺ fieldnames = ['name', 'age', 'city'] # λ°μ΄ν° rows = [ {'name': 'κΉμ² μ', 'age': 20, 'city': 'λμ '}, {'name': 'μ΄μν¬', 'age': 22, 'city': 'κ΄μ£Ό'} ] with open('output_dict.csv', 'w', newline='') as file: # νλλͺ μ μ§μ csv_writer = csv.DictWriter(file, fieldnames=fieldnames) # ν€λ μμ± csv_writer.writeheader() # λ°μ΄ν° μμ± for row in rows: csv_writer.writerow(row)
μ°Έκ³ : νμ¬ νμ΅ νκ²½μμλ open ν¨μλ₯Ό μ¬μ©νμ¬ νμΌμ μ§μ μ½κ³ μ°λ κ²μ μ§μνμ§ μμ΅λλ€.
μ€μ΅
νλ©΄ μ€λ₯Έμͺ½ μ½λ μ€ν
λ²νΌμ λλ₯΄κ³ , ν¬λ‘€λ§ κ²°κ³Όλ₯Ό νμΈνκ±°λ μ½λλ₯Ό μμ ν΄ λ³΄μΈμ!
Guidelines
AI Tutor
Publish
Design
Upload
Notes
Favorites
Help
Code Editor
Execution Result