본문 바로가기
파이썬/주식 자동매매

Python 키움API 자동매매프로그램 개발-13.Python 기초편 조건문(2)

by 행복론자 2021. 1. 26.

시리즈 이전글입니다.

2021/01/25 - [파이썬/주식 자동매매] - Python 키움API 자동매매프로그램 개발-12.Python 기초편 조건문(1)

 

 

다음은 if 와 연결되는 elif else 구문입니다.

elif-else이 왜 필요한지 설명 드리면 이를 통해 조건을 ‘분기’ 시킬 수 있습니다. 

무슨 말이냐면 다음 코드는 stock_price가 60000인지 한 번 비교해보고 거짓이라면 그대로 마칩니다. 

stock_price = 70000
if stock_price == 60000:
  print(stock_price)  # 실행되지 않고 끝!



하지만 elif가 연결된다면 첫번째 if 조건에 해당되지 않을시 elif 조건에 부합하는지 확인합니다.

stock_price = 70000
if stock_price == 60000:
  print(stock_price)  # 실행되지 않고 끝!

elif stock_price > 70000:  # if에 맞지 않는다면 한 번 더 비교
  print('elif') 



이렇게 if-else를 사용한다면 if의 조건을 먼저 비교해보고 참이라면 if 밑 코드블록을 실행하고 거짓이라면 elif의 조건을 비교해 참이라면 elif 밑 코드블록을 실행합니다.

여기서 중요한 것은 만약 처음 if의 조건이 참이라면 elif의 조건은 비교조차 하지 않고 그대로 종료됩니다.

stock_price = 70000
if stock_price == 70000:
  print(stock_price)  # 실행

elif stock_price > 50000:  # if조건이 맞다면 비교조차 안함
  print('elif')

 

 

문법상 기억하셔야할 것은 if는 단 한번만 사용할 수 있으며 조건문의 제일 첫번째로 등장해야 합니다. elif 자체가 else-if 의 줄임말로써 ‘if가 아니라면’이라는 것을 의미하므로 

if 다음에 등장해야하는 것이 자연스럽다고 이해하시면 좋습니다. 

그런 점에서 아래 코드는 elif가 if보다 먼저 등장한 문법 오류로 실행되지 않습니다. 

stock_price = 70000
elif stock_price == 70000:
  print(stock_price)  

if stock_price > 50000:  
  print('elif')

 

 

if는 한번 밖에 사용할 수 없는 것과 달리 elif는 반복해서 사용할 수 있으며 elif 조건들 중 부합하는 조건이 있다면 밑에 elif 조건들은 무시되고 종료됩니다.

stock_price = 70000
if stock_price == 60000:
  print(stock_price)  # 실행 X

elif stock_price > 70000:
  print('elif1')  # 실행 X
  
elif stock_price > 50000:
  print('elif2')  # 실행 O
  
elif stock_price > 40000:
  print('elif3')  # 실행 X



많은 조건들을 사용했지만 아무 것도 만족하지 않으면 if-elif 구문은 실행되지 않고 종료됩니다. 

이렇게 조건들 중 어느 것에 해당하지 않으면 실행되는 영역을 위해 else를 사용합니다.

else는 이도저도 해당되지 않을 때 실행한다고 생각하면 

if-elif와 달리 아무런 조건도 필요로 하지 않습니다.

 

else 사용 예를 살펴보겠습니다.

stock_price = 70000
if stock_price == 60000:
  print(stock_price)  # 실행 X

elif stock_price > 70000:
  print('elif1')  # 실행 X

elif stock_price > 80000:
  print('elif2')  # 실행 X

elif stock_price > 90000:
  print('elif3')  # 실행 X

else:
  print('if-elif 중 아무것도 해당되지 않으면 이부분이 실행')

    # 반대로 어느 것이라도 해당되면 이 부분은 실행되지 않는다



하지만 조건문에 특성상 else 위에 존재하는 if-elif 중 하나라도 만족된다면 else 영역은 실행되지 않으며 elif와 마찬가지로 if가 먼저 등장하지 않는다면 else만 사용할 수 없다는 점을 

기억하시기 바랍니다.

stock_price = 70000
elif stock_price > 90000:
  print('if 없이 시작 불가..')  # 실행 X
else:
  print('if 없이 시작 불가..') # 실행 X

 

 


같이 보시면 좋을 글

2021/02/10 - [파이썬/주식 자동매매] - 주식매매프로그램 개발 노하우, 소스를 담은 전자책이 발간되었습니다.

 

주식매매프로그램 개발 노하우, 소스를 담은 전자책이 발간되었습니다.

주식매매프로그램 개발 노하우에 관한 제 전자책이 발간되었습니다. https://kmong.com/gig/292764 주식매매프로그램, 쉽게 따라 만드는 노하우와 소스를 드립니다. | 36000원부터 시작 가능한 총 평 0개

jsp-dev.tistory.com

 

2021/01/26 - [파이썬/주식 자동매매] - Python 키움API 자동매매프로그램 개발-14.Python 기초편 반복문(1) for 사용

 

반응형
이 포스팅은 쿠팡파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

댓글