Networks/Python

SK networks AI Camp - Python 기본(3)_제어문

코딩하는 Español되기 2024. 7. 12. 08:00

조건문

○ 형식 
    if 조건문 : 

        # 조건이 참이면, 실행
        print('조건 만족')
    else:

       # if 조건이 거짓인 경우

       print('조건 불만족')

○ 예시

a = 5
if a > 3:
	print('a > 3')
else:
	print('No')
# 출력 a>3

if a < 3:
	print('a > 3 Good')
else:
	print('NoNo')
# 출력 : No NO

○ 아래와 같이 쓸 수도 있어요.

a = 5
print('-'*3) if a > 3 else print('@@@')

# 출력 결과 : ---

print('-'*3) if a < 3 else print('@@@@')

# 출력 결과 : @@@@

○ 만약 if 밑에 다른 조건도 제약하고 싶다면? if ~ else 사이에 elif를 쓰면 되요.

if와 elif에는 조건을 적어줘야하고 else에는 안 적어줘요.

a = 5

if a > 10:            # a가 10 이상
	print(1)
elif a >= 5 & a <= 9: # a가 5이상 9이하
	print(2)
else:				  # 그 이외
	print(3)
    
# 결과 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보다 작거나 같다.

○ 연산자

연산자 설명
x or y x와 y 둘 중에 하나만 참이어도 참
x and y x와 y 둘 다 참이어야 참
not x x가 거짓이면 참

○ in

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

만약 리스트, 튜플, 문자열에 관해 궁금하시면 아래 링크를 참고해주세요.

2024.07.10 - [컴퓨터 공학/Networks] - SK networks AI Camp - Python 기본(2)

 

SK networks AI Camp - Python 기본(2)

새로운 파일을 만들어서 진행해볼게요.Python version은 3.11로 가상환경을 만들어서 해볼게요.코드 보고도 모르시겠으면 아래 링크를 참조해주세요.해야 할 내용1. Python version 3.11로 가상환경 설정py

joowon582.tistory.com


반복문

○ for

list, tuple, str과 같이 인덱싱 가능한 자료형을 이용해서 반복문을 실행해요

    ● List

lst = [1, 2, 3]

for i in lst:
	print(i)

# 출력 결과
# 1
# 2
# 3

print([i for i in lst])

# 출력 결과 : [1, 2, 3]

    ● Tuple

tup = ('a', 'b', 'c')

for i in tup:
	print(i)
print('-' * 10)

print([i for i in tup])


# 출력 결과
# a
# b
# c
# ----------
# ['a', 'b', 'c']

    ● String

string = '홍길동'

for i in string:
	print(i)
print('-'*10)

print([i for i in string])

# 출력결과
# 홍
# 길
# 동
# ----------
# ['홍', '길', '동']

    ● 문제 : 출력 결과를 맞춰보세요.

# 1번

if [''] is ['']:
    print(1)
elif (0):
    print(2)
else:
    print(3)
       
    
# 2번

if [''] is ['']:
    print(1)
elif not (0):
    print(2)
else:
    print(3)


# 3번
  
if [''] == ['']:
    print(1)
elif (0):
    print(2)
else:
    print(3)
    
    
 # 4번
 
if [''] is ['']:
    print(1)
elif not (0):
    if len((0, 1)) == len({'a':'', 'b':''}['b']):
        print(2)
    else:
        print(22)
else:
    print(3)

○ for - continue, break, pass

    ● pass : 실행할 코드가 없는 것, 다음 행동을 계속해서 진행

lst = [1,2,3,4,5,6,7]

for i in lst:
    if i % 3 == 0:
        print(f'짝!', end=' ')
        pass
        print(f'3의 배수 : {i}\n')
    else:
        print(f'i: {i}\n')

   break : 반복문을 멈추고 반복을 도는 loop를 탈출

lst = [1,2,3,4,5,6,7]

for i in lst:
    if i % 3 == 0:
        print(f'짝!', end=' ')
        break    					# break에 도달하여 for문이 아예 종료
        print(f'3의 배수 : {i}\n')
    else:
        print(f'i: {i}\n')

    ● continue : 바로 다음 순번의 loop 진행

lst = [1,2,3,4,5,6,7]

for i in lst:
    if i % 3 == 0:
        print(f'짝!', end=' ')
        continue					# continue 밑에 print(f'3의 배수....) 부분만 생략
        print(f'3의 배수 : {i}\n')
    else:
        print(f'i: {i}\n')


○ for - else : for문 실행이 완료되면 else가 실행

lst = [1,2,3,4,5,6,7]
for i in lst:
    if i % 2 == 0: # 짝수
        pass
        print(f'짝수 : {i}')
    else:
        print(f'홀수 : {i}')
else:
    print(f'for문 종료')

lst = [1,2,3,4,5,6,7]
for i in lst:
    if i % 2 == 0: # 짝수
        continue
        print(f'짝수 : {i}')
    else:
        print(f'홀수 : {i}')
else:
    print(f'for문 종료')

lst = [1,2,3,4,5,6,7]
for i in lst:
    if i % 2 == 0: # 짝수
        break                     # break로 for문이 중간에 멈추면 else 실행 X
        print(f'짝수 : {i}')
    else:
        print(f'홀수 : {i}')
else:
    print(f'for문 종료')


while

total, index = 0, 0

while index < 10:
    index += 1  # == index = index + 1
    print(f'i: {index}')
    total += index
total

lst = ['a', 'b', 'c']
index = 0

while index < len(lst):
    print(lst[index])
    index += 1

string = 'Hello'
index = 0

while index < len(string):
    print(string[index:])
    index += 1


○ while - continue, break, pass

n = 0

while True:
    print(n)
    n += 1
    if n > 5:
        break

아래 예제에서는 n = 0이고 while문에 n이 들어가있어요. 0 = False이므로 while문이 실행 안되요.

n = 0

while n:  # 0은 false 라서 while문이 실행이 안되요
    print(n)
    n += 1
    if n > 5:
        break

 

    ● continue

n = 10

while n:
    n -= 1  # n = n-1
    if n % 2 == 0:
        print('짝수')
        continue
        print(n) #출력 되지 않음

 

    ● pass

n = 10

while n:
    n -= 1  # n = n-1
    if n % 2 == 0:
        print('짝수')
        pass			# 아래 print(n) 출력
        print(n)


○ while - else

n = 10

while n:
    n -= 1  # n = n-1
    if n % 2 == 0:
        print('짝수')
        continue
        print(n) #출력 되지 않음
else:
    print('끝') # while문 끝나면 출력

n = 0

while True:
    print(n)
    n += 1
    if n > 5:
        break
else:
    print('끝') # 중간에 while 문 끝나서 else문 출력 부분 출력 안됨

 

오늘은 반복문, 제어문에 대해 알아보았어요. 다음 교육 후 포스팅 할게요.