[Python] 조건문과 반복문

수빈·2024년 5월 23일

Python

목록 보기
4/6
post-thumbnail

??? : 야 조건문이랑 반복문만 있으면 뭐든 다 만들수 있지 !

라고 대학때 선배가 말했던 기억이 있다. 그때는 뭔 🐶소리야 라고 생각했는데 지금은 살짝 공감되는 것 같기도 ,,,,

아무튼 조건문이랑 반복문만 있으면 만들수 있는 것이 많다는 뜻이겠지.

오늘은 조건문과 반복문에 대해서 알아보겠다 📝

1. 조건문

네이버 사전에 조건문을 검색하면 이렇게 설명이 나온다. (사랑해요 네이버🤍)
프로그래밍 언어에서의 조건문도 사전적 정의와 동일한 개념이다. 어떤 조건에 만족되었을 때만 수행되는 문장. 이게 바로 조건문의 핵심인 것 같다.

설명따윈 집어치우고 바로 어떤식으로 사용하는 지 살펴보자 !

if-else

조건문을 사용할 땐 if - else 라는 문법을 사용하게 된다. 단어 뜻만 봐도 만약에 - 또 다른 이라는 의미를 가지고 있는것을 알 수 있다.

if라는 단어의 뒤엔 어떤 조건을 작성하게 되고 그 조건에 일치한다면 if 아래의 내용을 수행하고, 조건에 일치하지 않는다면 else 아래의 내용을 수행하게 된다. 예제를 한번 살펴보자 !


위와 같이 코드를 작성하고 코드를 작성하고 실행해보았다. money라는 변수에 5000이라는 값이 담겨있고, if의 조건이 money가 3000보다 클때 라고 설정되어 있기에 money변수는 이 조건에 충족을 하게된다. 그러므로 if아래에 내용을 수행하게 되어 '택시를 타자!' 라는 문장이 출력되게 된다.

여기서 잠깐 ! 이전의 내용과 조금 다른 점이 2가지가 있다.

  1. if와 else에서 조건을 작성 한 뒤에 콜론(:)을 붙여주는 것.
  2. if-else 아래 수행될 내용들이 들여쓰기 되어 있는 것.

📌 첫번째로 조건 작성 뒤 콜론(:)를 붙이는 것은 조건설정이 끝났다는 표시라 생각하면 될 것 같다.
📌 두번째가 중요한데 !!!! 파이썬에서는 조건문이나 반복문으로 수행될 내용을 별도의 괄호를 통해 묶어놓지 않기 때문에 수행될 내용들을 구분해서 작성하는 것이 중요하다. 그렇기 때문에 if,else와 나중에 알아볼 반복문, 함수, 클래스 등등에선 들여쓰기를 무조건 필수로 사용해야 한다. 콜론(:) 이후에 작성될 내용은 무조건 들여쓰기 한다고 생각하면 편할 것이다.

if - else 이외에도 파이썬에서는 elif라는 문법도 제공을 한다.

elif

체크하고 싶은 조건이 하나가 아닌 여러개일 때 사용하는 방법이다.
코드를 바로 보자 !

money = 2000

if money > 3000:
	print("택시를 타자!")
elif money > 1200:
	print("버스를 타자")  # '버스를 타자'가 출력됨
else:
	print("걸어가자")

elif는 여러개 사용이 가능하다는 점도 참고로 알아두면 좋겠다 !

다음으로는 반복문에 대해서 알아보겠다 !

2. 반복문


이번엔 반복문을 사전에 검색해보았다. (사랑해요 네이버🤍 2)
반복문은 그냥 프로그래밍적인 사전적 의미가 나온다. 말 그대로 특정 부분의 코드가 반복 실행되도록 하는 구문이다.

반복문을 사용하는 방법을 바로 알아보러 가자 ~

for

fruits = ['사과', '배', '감', '수박', '딸기']

for fruit in fruits:
	print(fruit)

위의 코드를 실행하면 나오는 결과값은 아래와 같다.

fruits라는 리스트에 있는 요소 하나하나를 꺼내서 임의로 만든 fruit라는 변수에 담아 사용하는 것이라고 생각하면 될 것 같다.

예제를 통해 더 자세히 알아보겠다.

people = [
    {'name': 'bob', 'age': 20},
    {'name': 'carry', 'age': 38},
    {'name': 'john', 'age': 7},
    {'name': 'smith', 'age': 17},
    {'name': 'ben', 'age': 27},
    {'name': 'bobby', 'age': 57},
    {'name': 'red', 'age': 32},
    {'name': 'queen', 'age': 25}
]

위와 같이 people 이라는 리스트가 있을 때, 여기에 속한 사람들의 이름과 나이를 각각 출력하면 어떻게 코드를 작성해야 할까 ?

for person in people:
    name = person['name']
    age = person['age']
    print(name, age)


위와 같이 코드를 작성해서 실행했을 때 아래와 같은 결과값이 출력되는 것을 볼 수 있다.

여기서 반복문에 조건문을 추가하여, 만약 나이가 20살 이상인 사람들의 이름만 출력하도록 코드를 작성하고 싶다면 반복문 코드 안에 조건문을 추가하면 된다.

for person in people:
    name = person['name']
    age = person['age']
    if age >= 20:
        print(name)


이렇게 20살 이상인 사람들의 이름만 출력이 되는 결과값을 확인 할 수 있을 것이다.

enumerate, break

반복문을 사용할 때 유용하게 쓰이는 기능 두가지를 추가로 보겠다.

1. enumerate

반복문을 사용하여 요소를 반복하여 처리할 때, 해당 요소가 몇번 인덱스에 대한 값인지 필요할 때가 있을 것이다. 이때 유용하게 사용할 수 있는 기능이 바로 enumerate() 함수 이다.
enumerate()는 for문의 in 뒷부분을 enumerate()함수로 감싸서 사용해주면 된다. 바로 사용법을 보자

for i, person in enumerate(people):
    name = person['name']
    age = person['age']
    print(i, name, age)

enumerate()함수를 사용하면 in 앞에 두개의 변수를 작성해주어야한다. 앞에 위치하고 있는 i라는 변수가 인덱스를 나타내는 변수가 될 것이다. (index라는 의미로 i라는 명칭을 붙여 사용했지만 다른 이름으로도 설정이 가능하다는 점 참고)

이 코드를 실행시키면 아래와 같은 결과가 출력된다.

결과값을 보면 알 수 있듯이 각 요소별 인덱스의 값이 같이 출력되는 것을 확인 할 수 있다.

2. break

break문은 말 그대로 반복문을 브레이크! 시키는 기능이다.
앞의 5개만 반복을 시키고 나머지는 반복을 할 필요가 없을 경우를 예를 들어 코드를 작성해보겠다.

for i, person in enumerate(people):
    name = person['name']
    age = person['age']
    print(i, name, age)
    if i >= 4:
        break

인덱스의 값이 4보다 같거나 클 때 break를 시켜주는 코드이다. 해당코드를 실행시키면 인덱스값이 4가 되었을 때 반복문을 종료시키는 것을 확인 할 수 있다.

기본적인 조건문과 반복문을 알아보았다. 조건문과 반복문을 조합하여 사용한다면 다양한 것을 만들 수 있을 것 같지않나요 ? ⛓️

위에서 정리한 기초적인 문법 외에도 다양하게 조건문과 반복문을 사용할 수 있는데 그것들은 틈틈히 정리해서 계속 업데이트 하도록 하겠습니다 그럼 20000 😉

profile
Development History

0개의 댓글