[멋사 AI 웹 서비스 스쿨 TIL] 25일차 회고

1. if

# 제어문(Control Statement)
# 모든 언어가 다 가지고 있어요! 의미도 똑같아요!
# 사용하는 방법(구문)은 살짝 다를 수 있어요!

# if문은 조건을 이용해서 statement를 분기하는 역할을 수행해요!
# python은 block을 표현하기 위해서 {}를 사용하지 않고 대신
# indent(들여쓰기)를 사용해요

x = 3

if x > 5:
    print('x는 5보다 큽니다.')
elif x == 5:
    print('x는 5입니다.')
else:
    print('x는 5보다 작아요!')

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

fruits = ['apple', 'banana', 'cherry']

if 'apple' in fruits:
    print('사과가 리스트안에 있어요!')
else:
    print('사과가 리스트안에 없어요!')

2. for

# for

# 집합형 자료구조에 대한 반복처리를 하기 위해서 사용해요!

mySum = 0

# 원하는 횟수만큼 반복처리하기위해서는 range()를 이용해서
# for문을 사용

for x in range(10):
    mySum += x
    
print(f'0부터 9까지의 합은 : {mySum} 입니다.')    

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

myList = [1, 2, 3, 4, 5]
mySum = 0

# list, tuple과 같은 집합형 자료구조안에 있는 모든 요소에 대해서
# 반복처리할 때는 아래와 같이 처리.
for x in myList:
    mySum += x

print(f'list안 요소의 합은 : {mySum} 입니다.')
# Python은 List Comprehension(리스트 컴프리헨션)이라는 기법이 있어요!
# list를 편하게 생성하는 방법
# 반복문과 조건문을 이용해서 원하는 데이터로 list를 빠르게 생성할 때 사용

# 표현법

# [ expression for item in iterable if condition ]
# expression : 각 항목에 대한 계산된 값으로 list의 요소로 포함되요!
# for : for문 수행
# item : 집합형 자료구조 안에서 하나씩 뽑혀나온 값
# iterable : 집합형 자료구조(list, tuple, dict)
# condition : if문의 조건

myList = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# 새로운 list를 생성할꺼예요. 단, myList안의 값을 각각 2배로 해서 새로운 list를 생성.
score = [ x*2 for x in myList]
print(score)

# 새로운 list를 생성할꺼예요. 단, myList안의 값을 각각 2배로 해서 새로운 list를 생성.
# 조건이 있어요. 짝수만 해당 작업을 진행할꺼예요!
score = [ x * 2 for x in myList if x % 2 == 0 ]
print(score)

# 간단하게 5개 정도 프로그래밍 해 보아요!
# List Comprehension을 이용해서 만들어 보세요!

# 연습문제 1
# 1부터 10까지의 제곱 리스트 만들기
myList = [ x*x for x in range(1,11)]
print(myList)

# 연습문제 2
# 1부터 10까지의 숫자 중 짝수의 제곱 리스트 만들기
myList = [ x*x  for x in range(1,11) if x % 2 == 0 ]
print(myList)

# 연습문제 3
# 리스트의 각 단어에서 'a'가 포함된 단어들만 필터링하여 새 리스트 만들기
words = ['apple', 'banana', 'cherry', 'date']
myList = [ x for x in words if 'a' in x ]
print(myList)

# 연습문제 4
# 1부터 10까지의 숫자 중 짝수와 그 제곱값을 튜플로 만들어서 새 리스트 만들기
myList = [ (x, x*x) for x in range(1,11) if x % 2 == 0]
print(myList)

# 연습문제 5
# 1부터 5까지의 숫자들 중 짝수는 그대로, 홀수는 음수로 변환하여 리스트 만들기
myList = [ x if x % 2 == 0 else -x for x in range(1,6) ]
print(myList)

3. while

# while
# while은 다른 언어와 똑같아요!

idx = 0
mySum = 0

while idx < 10:
    mySum += idx
    idx += 1

print(mySum)