[혼공학습단] 2주차 혼공파 파이썬 기본 미션

김수연·2022년 7월 17일
0

혼공학습단 8기

목록 보기
2/7
post-thumbnail

🎉1주차 MISSION CLEAR!!


파이썬을 1학년때만 사용하고 그 이후엔 다른 언어를 배우느라 많이 잊어버렸는데 요즘 관심이 있는 데이터 분석에 주로 파이썬이 사용되어 다시 공부하게 되었다. 혼공학습단을 통해 매주 미션을 수행하고 다른 사람들도 함께 공부하는 것이 보이니 지속적으로 해나갈 수 있는 힘이 생기는 거 같다. 나도 공부하고, 나중에 혼공학습단을 진행하는 분들도 도움이 되도록 이왕이면 자세하고 다양한 방식으로 생각해보고 코드를 작성해봐야겠다!

2주차(7/11 - 7/17)

📕 기본미션: p.137 3번 문제 풀고 본인이 태어난 해와 띠를 출력하는 결과값 화면 인증샷

  1. 사용자에게 태어난 연도를 입력받아 띠를 출력하는 프로그램을 작성해 주세요. 작성 시 입력받은 연도를 12로 나눈 나머지를 사용합니다. 나머지가 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11일 때 각각 원숭이, 닭, 개, 돼지, 쥐, 소, 범, 토끼, 용, 뱀, 말, 양띠입니다.
str_input = int(input("태어난 해를 입력해 주세요> "))
birth_year = str_input%12

if birth_year == 0:
	print("원숭이 띠입니다.")
elif birth_year == 1:
	print("닭 띠입니다.")
elif birth_year == 2:
	print("개 띠입니다.")
elif birth_year == 3:
	print("돼지 띠입니다.")
elif birth_year == 4:
	print("쥐 띠입니다.")
elif birth_year == 5:
	print("소 띠입니다.")
elif birth_year == 6:
	print("범 띠입니다.")
elif birth_year == 7:
	print("토끼 띠입니다.")
elif birth_year == 8:
	print("용 띠입니다.")
elif birth_year == 9:
	print("뱀 띠입니다.")
elif birth_year == 10:
	print("말 띠입니다.")
elif birth_year == 11:
	print("양 띠입니다.")


처음에 문제를 보고 생각한 방법은 다음과 같았다.
1) 태어난 해를 입력받아 birth_year 변수에 저장을 한 뒤
2) if문에서 직접 12로 나눈 나머지 값을 비교

하지만 이런 방식은 if문이 진행될 때마다 계산을 하는 것이므로 만약 12가 아닌 다른 수를 나눴을 때를 가정한다면, 모든 if문을 수정해야 한다. 따라서 좀더 효율적인 코드 작성은 아래와 같이 하는 것이 좋다.
1) 태어난 해를 입력받았을 때 먼저 나머지 값을 계산을하고
2) 구해진 나머지 값을 가지고 if문을 실행
이런 과정이 보기에도 깔끔하게 정리될 것이다.

str_input = int(input("태어난 해를 입력해 주세요> "))
birth_year = str_input%12

if birth_year == 0:
	print("원숭이 띠입니다.")
elif birth_year == 1:
	print("닭 띠입니다.")
elif birth_year == 2:
	print("개 띠입니다.")
elif birth_year == 3:
	print("돼지 띠입니다.")
elif birth_year == 4:
	print("쥐 띠입니다.")
elif birth_year == 5:
	print("소 띠입니다.")
elif birth_year == 6:
	print("범 띠입니다.")
elif birth_year == 7:
	print("토끼 띠입니다.")
elif birth_year == 8:
	print("용 띠입니다.")
elif birth_year == 9:
	print("뱀 띠입니다.")
elif birth_year == 10:
	print("말 띠입니다.")
elif birth_year == 11:
	print("양 띠입니다.")

📗 선택 미션: else 구문과 elif 구문 정리한 내용 포스팅하기

  • else 구문
    - if 조건문 뒤에 사용하며, if 조건문이 거짓일 떄 실행
if 조건:
조건이 참일 때 실행할 문장
else:
조건이 거짓일 때 실행할 문장
# 실행예제(p127)

number = input("정수 입력> ")
number = int(number)

if number %2 == 0: 
    print("짝수") #조건이 참일 때
else: 
  print("홀수") #조건이 거짓일 때
  • elif 구문
    - if 조건문과 else 구문 사이에 입력하며, 세 개 이상의 조건을 연결해서 사용할 때 적절
if 조건A:
조건A가 참일 때 실행할 문장
elif 조건B:
조건B가 참일 때 실행할 문장
elif 조건C:
조건C가 참일 때 실행할 문장
...
else:
모든 조건이 거짓일 때 문장
#실행예제(p128)
import datetime #날짜/시간과 관련된 기능을 가져온다.

now = dataetime.datetime.now() #현재 날짜/시간을 구한다.
month = now.month #쉽게 사용할 수 있게 월을 변수에 저장

#조건문으로 계절을 확인
if 3 <= month <= 5:
  print("현재는 봄입니다.")
elif 6 <= month <= 8:
  print("현재는 여름입니다.")
elif 9 <= month <= 11:
  print("현재는 가을입니다.")
else:
  print("현재는 겨울입니다.")

📌 추가 핵심 포인트

  • if 조건문의 조건식에서 False로 변환되는 값
    : None, 0, 0.0, 빈 문자열, 빈 바이트열, 빈 리스트, 빈 튜플, 빈 딕셔너리 등
  • pass 키워드는 프로그래밍의 전체 골격을 잡아놓고, 내부에 처리할 내용은 나중에 만들고자 할 때 pass라는 키워드를 입력
profile
Quien no arriesga, no gana nada

0개의 댓글