# 실습문제 1
# 오류 해결 과정 중심으로 풀이

import csv

def show_profit(data):
    name = data[0] # 종목
    purchase_price = int(data[1]) # 매입가
    amount = int(data[2]) # 수량
    target_price = int(data[3]) #목표가

    profit = (target_price - purchase_price) * amount # 수익금
    profit_ratio = (target_price/purchase_price -1) * 100  # 수익률
    
    print(f"{name} {profit} {profit_ratio:.2f}")

# 1. 파일 열기
file = open("./myvenv/Chapter10/mystock.csv", "r", encoding="utf-8") # 경로가 없이 파일만 지정 할 경우 루트폴더바로 아래에서 찾게된다.

# 2. 파일 데이터 읽기
reader = list(csv.reader(file))
for data in reader[1:]:
    show_profit(data)

file.close()

# 예외처리
# 원화를 입력, 환율을 입력 -> 달러값

try: # 예외가 발생할 수 있는 코드
    won = int(input("원화 금액을 입력하세요"))
    dollar = int(input("환율을 입력하세요"))
    print(won/dollar)
except ValueError as e: # 예외가 발생했을 때 실행되는 코드
                        # 예외를 직접 지정해줄수 있다.
    print("문자열 예외가 발생했습니다.", e)
except ZeroDivisionError as e:
    print("나누기 0은 불가능 합니다.", e)
else: # 예외가 발생하지 않았을때 실행되는 코드
    print("예외가 발생하지 않았을때 실행되는 코드입니다.")
finally: # 항상 실행되는 코드 
         # 리소스 반환을 꼭해야하는 경우 주로 사용한다.
    print("항상 실행되는 코드")

 

 

 

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

BELATED ARTICLES

more