특정 문자 입력 시 프로그램 종료 방법 문의 드립니다.import random import os import sys def input_check(msg, casting=int): while True: try: user_input = int(input("몇 일까요?(1 ~ 99 사이의 정수만 입력하세요) : ")) if user_input == "n": sys.exit() return user_input except: continue chance = 10 os.system("cls") print("1부터 99까지의 숫자를 10번의 시도 안에 맞춰보는 게임입니다") def game(): global count count = 0 number = random.randint(1, 99) while count < chance: count += 1 user_input = input_check("몇 일까요?(1 ~ 99 사이의 정수만 입력하세요) : ") if user_input == number: print("성공! {}이(가) 맞습니다.".format(number)) print("{}번만에 성공하셨습니다.".format(count)) break elif count == chance: print("실패, 정답은 {}입니다.".format(number)) break elif user_input < number: print("{}보다 큽니다.".format(user_input)) elif user_input > number: print("{}보다 작습니다.".format(user_input)) game() while True: print("게임을 계속 하시겠습니까?(Y/N) : ", end='') answer = input() if answer == "y" or answer == "Y": game() elif answer == "n" or answer == "N": print("게임을 종료합니다.") break 위 코드는 제가 일부 기능을 추가 한 상태입니다. 그런데 숫자를 입력 받을 때 사용자가 n을 입력하면 게임이 종료되게끔 이런 저런 시도를 해봤는데 안되더라고요 그래서 user_input = input("몇 일까요?(1 ~ 99 사이의 정수만 입력하세요) : ") if user_input == "n": sys.exit() 마지막으로 input_check 안에 이런식으로 해봤는데도 의도대로 안되더라고요. 무엇이 문제인지 잘 모르겠습니다. 어떻게 하면 n을 입력받았을 때 프로그램이 종료될까요? 아주 단순한 문제인거 같은데 답을 모르겠습니다. 반복문
whilewhile문은 파이썬에서 가장 간단한 반복 구문 while문의 구조
while 실습 예제예제1) 사용자가 양의 정수 N을 입력하면 1~N까지 숫자를 출력하는 프로그램을 작성하라.
예제2) 위 예제 1은 음수를 입력하면 문제가 발생한다. 음수를 입력하면 '잘못된 입력' 이라고 출력하고 프로그램을 종료하도록 업그레이드 하여라.
for in다음과 같은 리스트의 요소들을 하나씩 출력하는 프로그램을 while문으로 작성하는 경우
파이썬에서 시퀸스 구조 등 순회 가능한 iterable 객체의 요소를 반복적으로 처리할 경우 for in 구문을 많이 사용
for in 구문의 구조
순회 가능한 객체에서 요소를 하나씩 가져와 문장1 ~문장N을 실행하며, 더 이상 가져올 요소가 없을 때까지 반복한다. for in 실습 예제다음 코드들을 실행해 보자 ex
zip(), range()zip()
range()
break, continuebreak반복문에서 brak문이 실행되면 반복이 중단되고 해당 반복문 다음 코드를 실행 continue반복문에서 continue문이 실행되면 continue문의 다음 문장이 실행되지 않고 반복문의 처음으로 돌아가 실행 반복문에서의 else
예제break 사용 예제) 사용자로부터 문자열을 입력받아 이를 대문자로 바꿔 출력하는 프로그램을 작성하되, q가 입력될 때까지 반복해서 실행하라.
continue 사용예제) 1~100사이의 짝수만 출력하는 프로그램을 작성해라.
Problems양의 정수 N을 입력받아 N의 약수를 출력하는 프로그램을 작성하시오(HINT) 1~N까지의 수를 하나씩 순회하면서 순회하는 수 i가 N을 나누어 나머지가 0 일 때, i는 N의 약수이다. 즉, N % i == 0일 때, i는 N의 약수
숫자 맞추기 게임) 1~100 사이의 임의의 수를 생성하고, 사용자가 생성된 숫자를 맞추는 프로그램을 작성하라.(게임규칙)예를 들어 무작위로 생성된 수가 77이라고 가정했을 때, 플레이어가 처음에 40을 입력하면 77은 40보다 크므로, '더 큰수 입니다' 라고 출력, 다시 90을 입력하면 '더 작은 수 입니다' 라고 출력하면서 플레이어가 맞춰야 할 숫자의 범위를 좁혀 가서 맞출 수 있도록 한다. 최종적으로 77을 입력하면 '맞췄습니다'라고 출력하고 프로그램 종료.
Summary
|