JOB RECIPE


Job To Be

파이썬 입문 1 | If · For · While
본문 바로가기
Profile Picture

Job To Be

First Thought, Best Thought

본문 바로가기

Data Science/Python

파이썬 입문 1 | If · For · While

 

 

 

1. If

 

1. If 기본 구조

 

money = True                # 돈이 있다
if money:                   # money가 있다면
    print("택시를 타고 가라") # 택시를 타고 가라를 출력
else:                       # 또는 money가 없다면
    print("걸어가라")        # 걸어가라를 출력
 
 
 
TERMINAL
택시를 타고 가라

 

 

 

2. 비교 연산자

 

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

 

 

 

3. and, or, not

 

x or y x와 y 둘 중 하나만 참이어도 참이다.
x and y x와 y 모두 참이어야 참이다.
not x x가 거짓이면 참이다.

 

money = 1000 # 돈이 1000원 있다
card = True # 카드가 있다
if money >= 3000 or card :  # money가 3000보다 크거나, 카드가 있다면 (조건 충족 O)
    print("택시를 타고 가라") # 택시를 타고 가라를 출력
else:   # 또는 (조건 충족 X)
    print("걸어 가라") # 걸어 가라를 출력
 
 

TERMINAL
택시를 타고 가라

 

 

 

4. in, not in

 

x in 리스트 x not in 리스트
x in 튜플 x not in 튜플
x in 문자열 x not in 문자열

 

pocket = ['paper', 'cellphone', 'money'] # 주머니에 paper, cellphone, money가 있다.
if 'money' in pocket:                             # pocket에 money가 있으면
    print("택시를 타고 가라")                   # 택시를 타고 가라를 출력
else:                                                    # 또는 (pocket에 money가 없다면)
    print("걸어 가라")                             # 걸어 가라를 출력
 
 
 
TERMINAL
택시를 타고 가라

 

 


 

 

 

2. While

 

 

1. While 기본 구조

 

treehit = 0
while treehit <10: # 0부터 9까지
    treehit = treehit + 1 # treehit를 1씩 증가시킴
    print("나무를 %d번 찍었습니다." % treehit) # treehit 출력
    if treehit == 10:   # treehit가 10이 되면
        print("나무 넘어갑니다.")   # 나무 넘어감 출력
 
 
 
TERMINAL
나무를 1번 찍었습니다.
나무를 2번 찍었습니다.
나무를 3번 찍었습니다.
나무를 4번 찍었습니다.
나무를 5번 찍었습니다.
나무를 6번 찍었습니다.
나무를 7번 찍었습니다.
나무를 8번 찍었습니다.
나무를 9번 찍었습니다.
나무를 10번 찍었습니다.
나무 넘어갑니다.

 

 

 

 

예제 2 While문(반복문) 빠져나가기

 

coffee = 10         # 자판기에 있는 커피의 수
money = 300      # 나한테 있는 돈
while money:     # 돈이 있을 때만
    print("돈을 받았으니, 커피를 줍니다.")   # 커피를 준다
    coffee = coffee -1                                # 커피를 줄때마다 커피는 1개씩 줄어든다
    print("남은 커피의 양은 %d개입니다." % coffee)        # 남은 커피의 양 출력
    if coffee == 0:                                                           # 커피가 다 소진되면
        print("커피가 다 떨어졌습니다. 판매중지합니다.")   # 판매중지
        break       # While문(반복문)을 빠져나간다
 
 
 
TERMINAL
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 9개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 8개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 7개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 6개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 5개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 4개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 3개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 2개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 1개입니다.
돈을 받았으니, 커피를 줍니다.
남은 커피의 양은 0개입니다.
커피가 다 떨어졌습니다. 판매중지합니다.  # 커피가 다 소진되면 판매중지

 

 

 

 

 


 

 

 

3. For

 

 

1. For 기본 구조 

 

a = [(1,2), (3,4), (5,6)]   # 리스트 a의 튜플
for (first, last) in a:        # 리스트 a의 각 튜플에서 첫 번째 값과 두 번째 값을 각각 first와 last에 대입
    print(first + last)        # first와 last를 더하여 출력
 
 
TERMINAL
3
7
11

 

 

 

 

 

예제 2

 

marks = [90, 50, 60, 75, 30] # 5명의 학생들 성적

number = 0                           # 학생 번호
for mark in marks:                # 성적을 하나씩 mark에 대입
    number = number + 1      # 학생 번호는 1부터 1씩 증가
    if mark >= 60:                   # 성적(mark)이 60점 이하이면
        print("%d번 학생은 불합격입니다." % number)    # 불합격 멘트와 학생 번호 출력
    else:
        print("%d번 학생은 합격입니다." % number)       # 또는 합격 멘트와 학생 번호 출력


 
TERMINAL
1번 학생은 불합격입니다.
2번 학생은 합격입니다.
3번 학생은 불합격입니다.
4번 학생은 불합격입니다.
5번 학생은 합격입니다.

 

 

 

 

 

예제 3. 구구단

 

for i in range(2,10): #2~9까지 범위를 반복
    for j in range(1,10): #1~9까지 범위를 반복
        print(i*j, end=" ") #한 줄에 결과를 출력하고, 한 칸 띄고(" ") 줄바꿈은 하지않음. j가 끝나면 줄바꿈
    print('') #한 줄 띄기 (''(작은따옴표)는 줄바꿈을 의미)
 
 
 
TERMINAL
2 4 6 8 10 12 14 16 18 
3 6 9 12 15 18 21 24 27 
4 8 12 16 20 24 28 32 36 
5 10 15 20 25 30 35 40 45 
6 12 18 24 30 36 42 48 54 
7 14 21 28 35 42 49 56 63 
8 16 24 32 40 48 56 64 72 
9 18 27 36 45 54 63 72 81

 

 

 

 

 

예제 4. List Comprehension

 

# 같은 식을 다양하게 표현하기
 
# 1
a = [1,2,3,4]
result = []                            # 결과를 담을 리스트
for num in a:                       # 리스트 a의 각 원소 반복
    result.append(num*3)    # 각 원소에 3을 곱한 결과를 result 리스트에 담기
print(result)
# 2
 
a = [1,2,3,4]
result = [num*3 for num in a]   # 리스트 a의 각 원소에 3을 곱한 결과를 result 리스트에 담기
print(result)
# 3
 
a = [1,2,3,4]
result = num * 3 for num in a if num % 2 == 0] # 리스트 a의 원소 중에서 짝수에만 3을 곱하여 result 리스트에 담기
print(result)
 
 
 
TERMINAL #
[3, 6, 9, 12]  #1, #2, #3 모두 결과는 같다

 

 

 

 

반응형