본문 바로가기
프로그래밍/파이썬 Python

[파이썬] 2-1. 조건문 -if-elif-else- [입문,초보용 문법] - 질문으로 공부하는-python

by it-수다쟁이증후군 2023. 3. 31.

어제.ssam)
들어가기전

이전글에서는 간단하게 제어문 - 조건문과 반복문 개념정리 를 했습니다. 이번글에서는 특히 제어문(if-elif-else)에 대해서 중점적으로 다룰겁니다 만~~, 솔직히 별다르게 어려울건 없습니다. 프로그램이라는 것이 문법이 어렵다기 보다는 그 문법을 가지고 원하는 결과값을 만들어 내는것이 어려운거죠.

그럼에도 불구하고 문법이 어렵다고 느끼는 것은 용어정의가 제대로 되지 않아서 입니다. 이번 글에서도 처음 보는 단어들이 나오면 그것 중심으로 "읽어" 나가면 됩니다. 그럼 본격적으로 시작 할께요.

"파이썬 조건문 if elif else" 문장을 썸네일로 만든 타이포그래피
조건식의 기초

Q1.나)
if문에 대해서 설명해주세요.

A1.ssam)
if 문)은 1)조건식이 2)참(True)일 때 3)실행할 코드 블록을 4)정의하는 5)조건문입니다. 아래는 if 문의 기본적인 문법입니다.

if 조건식:
실행할 코드 블록

위 문법에서
조건식은 참 또는 거짓을 판단할 수 있는 표현식입니다.
실행할 코드 블록은 조건식이 참일 경우 실행할 코드를 포함하는 블록입니다.

예를 들어, if 문을 사용하여 정수형 변수 x가 양수인 경우에만 코드를 실행하는 예시를 보겠습니다.

x = 10

if x > 0:
print("x는 양수입니다.")

위 코드에서 if x > 0:x 변수의 값이 0보다 큰 경우에만 print() 함수를 실행합니다. 따라서 x 값이 10인 경우, "x는 양수입니다."가 출력됩니다. x 값이 0보다 작거나 같은 경우에는 print() 함수를 실행하지 않습니다.

Q2.나)
조건식은 참거짓을 판단할수 있어야 한다고 했는데, 만약에 판단할수 없는? 조건식이 들어가면 어떻게 되나요?

A2.ssam)

먼저 질문을 정리할께요. :
(참거짓을 판단할수 있는) (표현식) 을 (조건식) 이라고합니다.
(참거짓을 판단할수 없는) (표현식) 은 (조건식) 이라고 할 수 없습니다.

조건식은 반드시 참 또는 거짓으로 판단될 수 있는 표현식이어야 합니다. 만약 판단할 수 없는 표현식이 들어간다면, SyntaxError가 발생합니다.

예를 들어, 다음과 같은 코드에서는 SyntaxError가 발생합니다.

x = 10
if x = 10:
print("x는 10입니다.")

위 코드에서 if x = 10:의 등호(=)는 대입 연산자이기 때문에 조건식으로 사용될 수 없습니다. 따라서 위 코드를 실행하면, SyntaxError가 발생합니다.

조건식은

  1. 비교 연산자(>, <, >=, <=, ==, !=)
  2. 논리 연산자(and, or, not)
  3. 멤버십 연산자(in, not in)
  4. 식별 연산자(is, is not)

등을 사용하여 구성할 수 있습니다. 이외의 표현식은 조건식으로 사용될 수 없습니다.

Q3.나)
if 에 대해서 간단하게 정리해주세요.

A3.ssam)
조건식에 대한 주요 내용:

  • 조건식은 반드시 참 또는 거짓으로 판단될 수 있는 표현식이어야 합니다.
  • 조건식은 비교 연산자, 논리 연산자, 멤버십 연산자, 식별 연산자 등을 사용하여 구성할 수 있습니다.
  • 조건식을 판단할 때, 참인 경우에는 조건문의 실행 코드 블록이 실행되고, 거짓인 경우에는 실행 코드 블록이 실행되지 않습니다.

Q4.나)
else문 에 대해서 설명해주세요

A4.ssam)
else 문은 if 문과 함께 사용되며, if 문의 조건식이 거짓(False)인 경우 실행됩니다. else 문은 if 문과 함께 사용되어 조건에 따라 실행할 코드 블록을 결정합니다.

예를 들어, 다음은 else 문을 사용하여 if 문의 조건식이 거짓일 때 실행할 코드 블록을 구현한 예시입니다.

x = 10

if x > 0:
print("x는 양수입니다.")
else:
print("x는 양수가 아닙니다.")

위 코드에서 x가 0보다 크므로 if 문의 실행 코드 블록이 실행되어 "x는 양수입니다."가 출력됩니다. else 문의 실행 코드 블록은 실행되지 않습니다.

다음은 x가 음수인 경우를 추가한 예시입니다.

x = -5

if x > 0:
print("x는 양수입니다.")
else:
print("x는 양수가 아닙니다.")

위 코드에서 x가 0보다 작으므로 if 문의 실행 코드 블록이 실행되지 않고, else 문의 실행 코드 블록이 실행되어 "x는 양수가 아닙니다."가 출력됩니다.

Q5.나)
else문 사용에 대해서 주의 해야 할 점 있나요?

A5.ssam)
else 문을 사용할 때 주의해야 할 점은 다음과 같습니다.

  1. else 문은 반드시 if 문 뒤에 사용되어야 합니다. if 문이 없이 else 문만 사용할 수 없습니다.
  2. else 문은 if 문과 함께 사용되어 조건에 따라 실행할 코드 블록을 결정합니다. else 문은 항상 if 문의 조건식이 거짓일 때 실행됩니다.
  3. else 문은 if 문의 실행 코드 블록과는 별개의 코드 블록으로 동작합니다.
  4. else 문은 선택적으로 사용할 수 있습니다. if 문만 사용할 수도 있고, else 문과 함께 사용할 수도 있습니다.

else 문을 사용할 때는 위와 같은 사항을 고려하여 코드를 작성해야 합니다.

Q6.나)
elif문 에 대해서 설명해주세요.

A6.ssam)
elif 문은 if 문과 else 문 사이에 위치하여, 여러 개의 조건을 검사하는 데 사용됩니다. elif 문은 else if의 줄임말로, 이전 조건식이 거짓일 경우 다음 조건식을 검사합니다.

예를 들어, 다음은 if, elif, else 문을 모두 사용하여 세 개의 조건을 검사하는 예시입니다.

x = 0

if x > 0:
print("x는 양수입니다.")
elif x == 0:
print("x는 0입니다.")
else:
print("x는 음수입니다.")

위 코드에서 x가 0이므로, if 문의 실행 코드 블록이 실행되지 않고, 다음으로 넘어가서 elif 문의 조건식이 True가 됩니다. 따라서 "x는 0입니다."가 출력됩니다.

if 문과 else 문이 함께 사용될 때,
elif 문을 사용하여 추가적인 조건을 검사할 수 있습니다. 이를 통해 여러 개의 조건을 검사하는 데 용이합니다.

Q7.나)
elif문 사용에 대해서 주의 해야 할 점 있나요?

A7.ssam)
elif 문을 사용할 때 주의해야 할 점은 다음과 같습니다.

  1. elif 문은 if 문과 else 문 사이에 위치하여 여러 개의 조건을 검사하는 데 사용됩니다.
  2. elif 문은 이전 조건식이 거짓일 때 실행되며, 조건식이 True인 경우에만 실행 코드 블록이 실행됩니다.
  3. elif 문은 필요한 만큼 사용할 수 있습니다. 여러 개의 elif 문을 사용하여 복잡한 조건 검사를 수행할 수 있습니다.
  4. elif 문은 if 문과 함께 사용되어야 하며, else 문보다는 앞에 위치해야 합니다.

elif 문을 사용할 때는 위와 같은 사항을 고려하여 코드를 작성해야 합니다.

Q8.나)
추가더 알아야 할 것이 있나요?

A8.ssam)
생각 "정리"할 몇 가지를 드리겟습니다. 용어 정리 꼭 해보시기 바랍니다.

1. 표현식 / 연산식 / 조건식 의 개념을 정리해보세요.
2. 표현식과 연산식의 관계는?
3. 표현식과 조건식의 관계는?
4. 연산식과 조건식의 관계는?

네가지 질문중 중 1번,2번,3번 은 이전 포스트 1-3 연산자2.제어문 을 천천히 읽어 보시면 답이 나오고 4번의 답은 그에 따라 자연스럽게 따라올 것 입니다. (질문에 대한 답은 추후 다른포스트에서 정리해서 올리겟습니다.)

댓글