Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 사전을 CSV 파일로 저장하는 방법은 무엇입니까?

<시간/>

CSV(쉼표로 구분된 값)는 많은 플랫폼과 응용 프로그램에서 널리 지원되는 가장 일반적인 파일 형식입니다.

Python의 표준 라이브러리에서 csv 모듈을 사용하십시오. 가장 쉬운 방법은 open() 함수를 사용하여 'w' 모드에서 csv 파일을 열고 쉼표로 구분된 형식으로 키 값 쌍을 작성하는 것입니다.


import csv
my_dict = {'1': 'aaa', '2': 'bbb', '3': 'ccc'}
with open('test.csv', 'w') as f:
    for key in my_dict.keys():
        f.write("%s,%s\n"%(key,my_dict[key]))

csv 모듈에는 작성할 csv 파일의 이름이 필요한 DictWriter 메서드와 필드 이름이 포함된 목록 개체가 포함되어 있습니다. writeheader() 메서드는 csv 파일의 첫 번째 줄을 필드 이름으로 씁니다. 후속 for 루프는 csv 형식의 각 행을 csv 파일에 씁니다.

import csv
csv_columns = ['No','Name','Country']
dict_data = [
{'No': 1, 'Name': 'Alex', 'Country': 'India'},
{'No': 2, 'Name': 'Ben', 'Country': 'USA'},
{'No': 3, 'Name': 'Shri Ram', 'Country': 'India'},
{'No': 4, 'Name': 'Smith', 'Country': 'USA'},
{'No': 5, 'Name': 'Yuva Raj', 'Country': 'India'},
]
csv_file = "Names.csv"
try:
    with open(csv_file, 'w') as csvfile:
        writer = csv.DictWriter(csvfile, fieldnames=csv_columns)
        writer.writeheader()
        for data in dict_data:
            writer.writerow(data)
except IOError:
    print("I/O error")