random
, time
라이브러리 이용하여 메뉴 자판기 실습하기if문은 조건을 판단하여 해당 조건에 맞는 상황을 수행하는데 쓰는 것으로, 기본 구조는 if와 else로 구성 됨
- 들여쓰기 : 4개의 공백 or Tab
if
조건문 뒤에 콜론(:) 사용하기elif
여러 번 사용할 수 있으며 조건문을 넣어야 한다.else
한번 만 사용할 수 있으며 조건문을 넣지 않는다.
조건문의 기본 구조if (조건식): 조건식에 해당 시, 실행시킬 문장 elif (조건식): 조건식에 해당 시, 실행시킬 문장 else: 위 조건식들에 해당되지 않는 경우, 실행시킬 문장
반복문은 반복해서 문장을 수행해야 할 경우에 사용 함
for문
: 반복할 횟수를 알 때 사용while문
: 반복할 횟수를 모를 때 사용 ( 조건문이 참인 동안 순회 )range(start, end, step)
,range(len())
: 반복 횟수 제한 가능enumerate()
: index와 요소를 함께 사용해야 되는 경우
반복문의 기본 구조# for 구문 for (조건식): 반복시킬 문장 # while 구문 while (조건식): 반복시킬 문장
연산자 | 설명 |
---|---|
x or y | x와 y 둘 중에 하나만 참이어도 참 |
x and y | x와 y 모두 참이어야 참 |
not x | x가 거짓이면 참 |
in과 not in | 설명 |
---|---|
x in (리스트/튜플/문자열) | 자료형 안에 x가 있으면 참 |
x not in (리스트/튜플/문자열) | 자료형 안에 x가 없으면 참 |
# 컴퓨터와 하는 가위바위보 게임
from random import choice
auto = choice(['가위', '바위', '보'])
user = input("가위, 바위, 보 : ")
# 입력한 값이 '가위, 바위, 보'가 맞다면 게임 실행, 아니면 else 문 출력
if user in ['가위', '바위', '보']:
if user == auto:
print(f"user : {user}, computer : {auto} 으로 비겼습니다.")
elif (user == '가위' and auto == '보') or (user == '바위' and auto == '가위') or (user == '보' and auto == '바위'):
print(f"user : {user}, computer : {auto} 으로 이겼습니다.")
else:
print(f"user : {user}, computer : {auto} 으로 졌습니다.")
else:
print("옳지않은 값을 입력하셨습니다.")
가위, 바위, 보 : 가위
user : 가위, computer : 가위 으로 비겼습니다.
# 익명 질문 게시판
question_list = []
# 질문 받기
while True:
question = input("질문을 입력해주세요 : ")
if question == "q":
break
else:
question_list.append({"질문" : question, "답변" : ""})
# 질문에 대한 답변 받기
for i in question_list:
print(i["질문"])
answer = input("답변을 입력해주세요 : ")
i["답변"] = answer
print("="*80)
print(question_list)
질문을 입력해주세요 : 가장 좋아하는 음식
질문을 입력해주세요 : 가장 좋아하는 음료
질문을 입력해주세요 : q
가장 좋아하는 음식
답변을 입력해주세요 : 설렁탕
가장 좋아하는 음료
답변을 입력해주세요 : 아아
================================================================================
[{'질문': '가장 좋아하는 음식', '답변': '설렁탕'}, {'질문': '가장 좋아하는 음료', '답변': '아아'}]
import random, time
# 저녁 메뉴 리스트
dinner = ["된장찌개", "김치찌개", "짬뽕", "마라탕"]
# 저녁 메뉴 추가
while True:
print(dinner)
item = input("음식을 추가해주세요 : ")
# 반복문 종료 시점
if(item == "stop"):
break
else:
dinner.append(item)
print(dinner)
print("="*70)
# 중복된 메뉴 제거
set_dinner = set(dinner)
# 저녁 메뉴 삭제
while True:
print(f"저녁 메뉴 리스트 : {set_dinner}")
item = input("음식을 삭제해주세요 : ")
if (item == "stop"):
break
else:
set_dinner = set_dinner - set([item])
print(set_dinner, "중에서 선택합니다.")
print("="*70)
print("5")
time.sleep(1)
print("4")
time.sleep(1)
print("3")
time.sleep(1)
print("2")
time.sleep(1)
print("1")
time.sleep(1)
print(f"오늘 저녁 메뉴는 '{random.choice(list(set_dinner))}' 입니다.")
['된장찌개', '김치찌개', '짬뽕', '마라탕']
음식을 추가해주세요 : 차돌박이짬뽕
['된장찌개', '김치찌개', '짬뽕', '마라탕', '차돌박이짬뽕']
음식을 추가해주세요 : 짬뽕
['된장찌개', '김치찌개', '짬뽕', '마라탕', '차돌박이짬뽕', '짬뽕']
음식을 추가해주세요 : stop
['된장찌개', '김치찌개', '짬뽕', '마라탕', '차돌박이짬뽕', '짬뽕']
======================================================================
저녁 메뉴 리스트 : {'김치찌개', '마라탕', '차돌박이짬뽕', '짬뽕', '된장찌개'}
음식을 삭제해주세요 : 짬뽕
저녁 메뉴 리스트 : {'김치찌개', '마라탕', '차돌박이짬뽕', '된장찌개'}
음식을 삭제해주세요 : stop
{'김치찌개', '마라탕', '차돌박이짬뽕', '된장찌개'} 중에서 선택합니다.
======================================================================
5
4
3
2
1
오늘 저녁 메뉴는 '김치찌개' 입니다.