Python - 제어문

hanyoko·2023년 7월 6일

PYTHON

목록 보기
7/11
post-thumbnail

제어문

in, not in

찾는 값 in [배열]

찾는 값이 배열에 있으면 true, 배열에 없으면 false를 반환한다.

찾는 값 not in [배열]

찾는 값이 배열에 없으면 false, 배열에 있으면 true를 반환한다.


비교연산자

풀이
x < yx가 y보다 작다
x > yx가 y보다 크다
x == yx와 y가 같다
x != yx와 y가 같지않다
x >= yx가 y보다 크거나 같다
x <= yx가 y보다 작거나 같다

논리연산자

연산자풀이
and 연산자1<10 and 5<6둘 중 모두 참일 때 참
or 연산자1 < 10 or 5 > 10둘 중 하나만 참이여도 참이다
not 연산자not xx가 거짓이면 참, x가 참이면 거짓

if문 elif문 else문

  • 파이썬은 switch 문 x없음

기본 구문

if 조건문:
	수행할 문장
else :
	수행할 문장

예시

money = 5000
if money > 10000:
    print("택시타고간다")
else :
    print("걸어간다") 
    
# 걸어간다    

print(10 == 20) #False
print(10 != 20) #True



money2 = 2000
card = True
if money >= 3000 or card:
    print("택시 타고 간다")
else :
    print("걸어간다")
    
if not card :
    print("카드가 없다")
else :
    print("카드가 있다") 
    
#택시 타고 간다

조건표현식

참인 경우 할당할 값 if 조건문 else 거짓인 경우 할당할 값

message = 'a' if 조건 else 'b'

예시

num1 = 2
result = "짝수" if num1 % 2 == 0 else "홀수"   
print(result)    

#짝수

in a in b(리스트, 튜플, 문자열)

**a가 b에 있는지 확인

예시

print(5 in [1, 2, 3, 4, 5])  #in포함하고 있으면 True, 포함하지 않으면 False
#True

pocket = ["paper", "cellphone", "card"]
if "money" in pocket:
    print("택시 타고 간다")
elif "card" in pocket:
    print("카드로 버스타고 간다.")
else :
    print("걸어간다.")
    
    
#카드로 버스 타고 간다

not a not in b

**a가 b에 없는지

예시

print(5 not in [1, 2, 3, 4, 5]) #not in 포함하고 있지 않으면 True, 포함하고 있으면 False
#False

실습

userId => 아이디 입력, userPw -> 비밀번호 입력
"green" "1234" 로그인이 되었습니다. 출력
 green이 아닐 때 아이디가 틀렸습니다. 출력
1234가 아닐 때 비밀번호가 틀렸습니다. 출력
 

userId = "green"
userPw = "1234" 

id = input("id를 입력해주세요: ")
pw = input("비밀번호를 입력해주세요: ")

if userId == id:
    if userPw == pw:
        print("로그인 되었습니다")
    else :
        print("비밀번호가 틀렸습니다")
else :
    print("아이디가 틀렸습니다")
                         
if userId == id and userPw == pw:
    print("로그인 되었습니다")
elif userId == id :
    print("비밀번호가 틀렸습니다")
elif userPw == pw:
    print("아이디가 틀렸습니다")
else:

반복문

while

while 조건:
	실행문
break; (반복탈출)
continue; (반복 건너뛰기)

예시

treeHit = 0
while treeHit < 10:
    print("나무를 %d번 찍었습니다." %treeHit)
    treeHit += 1

 ##########################

number = 0
while number != 4 :
    print("4가 아닙니다.")
    number = int(input())
 
 ##########################
 
fruits = ["사과","오렌지"]
fruits.append("딸기")
fruits.insert(1, "수박")
print(fruits)  

#['사과', '수박', '오렌지', '딸기']
##########################
    
#while문을 사용해서 1~10까지 숫자중 홀수만 리스트에 넣어주세요
numlist = []

num = 1
while num <= 10:
    if num % 2 == 1:
        numlist.append(num)
    num += 1
print(numlist)   

#[1, 3, 5, 7, 9]

for

for 변수 in 리스트(/튜플/문자열):
	수행할 문장

예시

list=["one","two","three"];
for i in list:
	print(i)

#one
#two
#three

for i in "green":
    print(i)
#g
#r
#....

marks = [90, 50, 67, 70, 80]
number = 0
for stu in marks:
    number = number + 1
    if stu >= 70:
        print("%d번 학생은 합격입니다" %number)
    else:
        print("%d번 학생은불합격입니다" %number)   
        
#1번 학생은 합격입니다
#2번 학생은불합격입니다
#3번 학생은불합격입니다
#4번 학생은 합격입니다
#5번 학생은 합격입니다

제어문 문제

1

coffee = 10
while True:
    money = int(input("돈을 넣어주세요: "))
    if money == 300:
        print("커피를 줍니다")
        coffee = coffee -1
    elif money > 300:
        print("거스름돈 %d를 주고 커피를 줍니다." %(money - 300))
        coffee = coffee -1
    else:
        print("돈은 다시 도렬주고 커피는 주지 않습니다.")
        print("남은 커피의 양은 %d입니다." %coffee)
    if coffee == 0:
        print("커피가 다 떨어졌습니다. 판매를 중지합니다.")
        break

2

""" *년도를 입력받아서 윤년인지 평년인지 나타내주세요
1. 연수가 4로 나누어 떨어지는 해는 윤년으로한다
2. 이중에서 100으로 나누어 떨어지는 해는 평년으로 한다
3. 그중에 400으로 나누어 떨어지는 해는 윤년으로 한다.
-정수로 년도를 받습니다
-입력받은 년도가 윤년인지 평년인지 출력하세요 """

year = int (input("년도를 입력해주세요: "))
if year % 4 == 0:
    if year % 100 == 0:
        yearText = "평년" 
        yearText = "윤년" if year % 400 == 0 else "평년"
    else :
        yearText = "윤년"
else :
    yearText = "평년"            
print(yearText)

0개의 댓글