본문으로 바로가기

csv 파일쓰기

category 코딩 예제 2018. 11. 30. 17:19
반응형

# -*- coding: utf-8 -*-


#------------------------------------------------------

# @file_name   : test.py

# @author      : 오태현

# @description : 학생들의 총점과 평균 점수 출력하는 프로그램

# @last_update : 2018-11-30

# -----------------------------------------------------


grade = [

    {"이름" : "철수", "국어" : 80, "영어" : 92, "수학" : 90, "과학" : 88},

    {"이름" : "영희", "국어" : 82, "영어" : 80, "수학" : 77, "과학" : 82},

    {"이름" : "민수", "국어" : 91, "영어" : 72, "수학" : 62, "과학" : 70},

    {"이름" : "지현", "국어" : 77, "영어" : 64, "수학" : 80, "과학" : 64},

]


tpl = "{0},{1},{2},{3},{4}\n"


with open("point.csv", "w", encoding="euc-kr") as f:

    f.write("이름, 국어, 영어, 수학, 과학\n")


    for item in grade:

        tmp = tpl.format(item["이름"], item["국어"], item["영어"], item["수학"], item["과학"])

        f.write(tmp)


with open("point.csv", "r", encoding="euc-kr") as f:

    csv_list = f.readlines()


    for i, line in enumerate(csv_list):

        if i > 0:

            item = line.strip().split(",")


            name = item[0]

            kor = int(item[1])

            eng = int(item[2])

            math = int(item[3])

            sci = int(item[4])

            total = kor + eng + math + sci

            avg = total / 4


            tpl = "{0}의 총점은 {1}점이고 평균은 {2:.2f}점 입니다."

            print(tpl.format(name, total, avg))

반응형

'코딩 예제' 카테고리의 다른 글

Kakao Book Search  (0) 2018.12.13
Random값의 범위 조절  (0) 2018.12.12
로또번호  (0) 2018.12.12
Kakao link label  (0) 2018.12.09
kakao flask  (0) 2018.12.03