*제어문
프로그램을 만드는 것도 집 짓기와 매우 비슷한 면이 있다. 나무, 돌, 시멘트와 같은 재료는 자료형이 되고 집의 뼈대를 이루는 철근은 제어문에 해당한다.
조건문 다음에 콜론(:)을 잊지 말자!
1.if(조건문)
#if -들여쓰기/조건문 :
money=True
if money:
print("taxi")
else:
print("walk")
비교연산자
x < y : x가 y보다 작다.
x > y : x가 y보다 크다.
x == y : x와 y가 같다.
x != y : x와 y가 같지 않다.
x >= y : x가 y보다 크거나 같다.
x <= y : x가 y보다 작거나 같다.
x or y : x와 y 둘 중 하나만 참이어도 참이다.
x and y : x와 y 모두 참이어야 참이다.
not x : x가 거짓이면 참이다.
in/not in
x in 리스트 /x not in 리스트
x in 튜플 /x not in 튜플
x in 문자열 /x not in 문자열
*pass 조건 넣지 않고 넘어가려면
pocket=['paper','money','cellphone']
if'money' in pocket:
pass
else:
print("walk")
*elif 다중 조건판단: 다양한 조건을 넣을 수 있다
pocket=['card','cellphone']
if'money' in pocket:
print("taxi")
elif 'card':
print("bus")
else:
print("walk")
2.while(반복문)
#while
TreeHit=0
while TreeHit<10:
TreeHit=TreeHit+1
print("나무를 %d번 찍으셨습니다"%TreeHit)
if TreeHit==10:
print("나무가 넘어갑니다")
*break
while문 강제로 멈추게 하기
# coffee.py
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
*continue
while문 처음으로 돌아가기
a = 0
while a < 10:
a = a + 1
if a % 2 == 0: continue #a가 짝수라면 continue를 만나 while문의 맨 처음으로 돌아가게 된다.
print(a) #홀수는 출력이 됨
3.for
for 변수 in 리스트(또는 튜플, 문자열):
수행할_문장1
수행할_문장2
...
# marks1.py
marks = [90, 25, 67, 45, 80] # 학생들의 시험 점수 리스트
number = 0 # 학생에게 붙여 줄 번호
for mark in marks: # 90, 25, 67, 45, 80을 순서대로 mark에 대입
number = number +1
if mark >= 60:
print("%d번 학생은 합격입니다." % number)
else:
print("%d번 학생은 불합격입니다." % number)
1번 학생은 합격입니다.
2번 학생은 불합격입니다.
3번 학생은 합격입니다.
4번 학생은 불합격입니다.
5번 학생은 합격입니다.
#range함수의 예시
add = 0
for i in range(1, 11):
add = add + i
print(add)
#1부터 10까지 i에 차례로 대입한 뒤 add에 총합이 구해진다.
*리스트 컴프리헨션
리스트 안에 for 문을 포함하는 리스트 컴프리헨션(list comprehension)을 사용하면 좀 더 편리하고 직관적인 프로그램을 만들 수 있다.
>>> a = [1,2,3,4]
>>> result = [num * 3 for num in a]
>>> print(result)
[3, 6, 9, 12]
파이썬-제어문
2024. 3. 15. 00:26