본문 바로가기
Coding/초보자를 위한 파이썬 300제

초보자를 위한 파이썬 300제 // 130 비트코인 가격 정보

by 포스트it 2021. 1. 18.
반응형

 

문제

아래 코드는 비트코인의 가격 정보를 딕셔너리로 가져오는 코드이다.

import requests
btc = requests.get("https://api.bithumb.com/public/ticker/").json()['data']

btc 딕셔너리 안에는 시가, 종가, 최고가, 최저가 등이 저장되어 있다. 최고가와 최저가의 차이를 변동폭으로 정의할 때 (시가 + 변동폭)이 최고가 보다 높을 경우 "상승장", 그렇지 않은 경우 "하락장" 문자열을 출력하라.

Key Name Description
opening_price 최근 24시간 내 시작 거래금액
closing_price 최근 24시간 내 마지막 거래금액
min_price 최근 24시간 내 최저 거래금액
max_price 최근 24시간 내 최고 거래금액

내풀이

import requests
btc = requests.get("https://api.bithumb.com/public/ticker/").json()['data']

변동폭 = float(btc['max_price']) - float(btc['min_price'])
if float(btc['opening_price']) + 변동폭 > float(btc['min_price']):
    print('상승장')
else:
    print('하락장')
    
결과값
상승장

정답

import requests
btc = requests.get("https://api.bithumb.com/public/ticker/").json()['data']

변동폭 = float(btc['max_price']) - float(btc['min_price'])
시가 = float(btc['opening_price'])
최고가 = float(btc['max_price'])

if (시가+변동폭) > 최고가:
    print("상승장")
else:
    print("하락장")

 

변수에 담아서 좀 깔끔하게 코드 정리하는 습관을 들이는 연습을 해야겠다.
print(btc) 해보면 결과값들이 float 형으로 나오기 때문에 float를 꼭 해줘야 한다.
728x90
반응형

댓글