파이썬 문법을 다시 복기하며 예시 코드를 실제로 타이핑하고 실행해보면서 TIL을 작성한다.
▶조건문
- 특정 조건이 True 인 경우에만 특정 코드 블록을 실행하도록 한다.
예시 )
x = 10
if x>0:
print("양수입니다.")
elif x< 0:
print("음수입니다.")
else:
print("0입니다.")
- 조건문에서는 들여쓰기 및 띄어쓰기가 매우 중요
***파이썬은 들여쓰기를 통해 블록을 식별하기 때문에 들여쓰기가 제대로 이루어지지 않으면 오류 발생
- 조건문 연산자
- == : 같음
- != : 같지 않음
- and : 모두 참일 때 참
- or : 하나 이상이 참일 때 참
- not : 조건을 부정
- 조건문은 중첩하여 사용할 수 있다.
x = 10
if x > 5:
print("x는 5보다 큽니다.")
if x < 15:
print("x는 15보다 작습니다.")
else:
print("x는 15보다 큽니다.")
else:
print("x는 5보다 작거나 같습니다.")
- 조건문을 한줄로 간략하게 표현할 수도 있음
x = 10
result = "양의 짝수" if x>0 and x%2 == 0 else "음수 또는 0"
print(result)
▶ 반복문 - for문
- for문의 기본 구조
for 변수 in 반복할_데이터:
- 반복할_데이터는 리스트, 튜플, 문자열 등과 같은 반복 가능한 데이터 타입이 될 수 있다.
- 변수는 각 반복마다 현재 값을 가지는 변수
- for문_리스트 순회하기
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
# "apple", "banana", "cherry"를 순서대로 출력
- for문_문자열 순회하기
for letter in "hello":
print(letter)
# "h", "e", "l", "l", "o" 를 순서대로 출력
- for문_range() 함수와 함께 사용하기
for i in range(5):
print(i)
# 0부터 4까지의 숫자를 출력
▷range 함수
- 연속된 정수를 생성하는 내장함수
- 시작값(start) , 끝값(stop), 증가값(step)을 인자로 받아 사용
- for 루프와 함께 자주 사용
- range(stop) 사례)
for i in range(5):
print(i, end = ' ')
# 0부터 시작하여 5 이전까지의 정수 시퀀스 생성
# 출력 : 0 1 2 3 4
- range(start, stop,step) 사례)
for i in range (1, 10, 2):
print(i, end = ' ')
# 1부터 시작하여 10 이전까지 2씩 증가하는 정수 시퀀스 생성
# 출력 : 1 3 5 7 9
- for문_딕셔너리 순회
person = {"name" : "john", "age" : 30, "city" : "New York"}
for key, value in person.items():
print(key, ":", value)
# name : john
# age : 30
# city : New York 출력!
- for 문_리스트에서 특정 값 걸러내기
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = []
for num in numbers:
if num % 2 == 0:
even_numbers.append(num)
print(even_numbers)
#[2,4,6,8,10] 출력
- for문_ 구구단 출력하기(이중 for문 사용)
for i in range(2,10):
print(f"{i}단:") #f-string
for j in range(1,10):
print(i, "x", j, "=", i*j)
- 반복문 for문을 사용한 예시(데이터 탐색)
data = [10, 20, 30, 40, 50]
threshold = 25
for d in data:
if d > threshold:
print("Value greater then" , threshold, "found:", d)
- 모델의 성능을 평가할 때 예측값과 실제값을 비교하기 위해 데이터를 반복처리
# 모델 성능 평가 예시
true_values = [1, 0, 1, 0, 1]
predicted_values = [0, 0, 1, 0, 1]
correct_predictions = 0
for true, pred in zip(true_values, predicted_values):
if true == pred:
correct_predictions += 1
accuracy = correct_predictions / len(true_values)
print("Accuracy:", accuracy)
▶반복문 - while문
- while문은 특정 조건이 True일 때에만 실행되며 조건이 False가 될 때까지 반복
- 기본 구조
while 조건: #for문은 반복할 데이터를 변수 다음에 넣어 줬다면 while은 조건(boolean)!!
코드_블록
- while문 기본 사용법
i = 1
while i <= 5:
print(i)
i += 1
# 1부터 5까지 출력하고 반복마다 i를 1씩 증가시킴
- 무한 루프를 짤 때는 반드시 'break'문을 사용해야 한다.
- 반복문에는 break, pass,continue 와 같이 특정 조건에 따라 반복 동작을 제어할 제어문과 함께 사용
- break 예시)
total = 0
while True : # 무한루프를 짤 때
num = input("숫자를 입력하세요 (종료하려면 'quit' 입력): ")
if num == 'quit':
break
total += int(num)
print ("합:" . total)
# 사용자가 'quit'을 입력할 때까지 반복하여 숫자를 입력받고 합을 출력
- pass 예시)
numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num % 2 == 0:
pass
else:
print(num, "은 홀수입니다.")
# 홀수를 출력하는 코드에서 짝수일 경우에는 아무 작업도 수행하지 않고 넘어감
- continue 예시 )
num = 0
while num < 10 :
num += 1
if num % 2 ==1:
continue
print(num)
# 1부터 10까지의 숫자 중 짝수를 출력
# continue 문은 짝수일 경우에만 출력을 수행, 홀수일 경우 다음 반복을 진행
- 조건에 따른 특정 동작 반복
num = 5
factorial = 1
while num > 0:
factorial *= num
num -= 1
print("Factorial of 5 is:", factorial)
# Factorial of 5 is: 120 출력!
'데이터분석 study > Python' 카테고리의 다른 글
TIL(Today I Learned) 24.07.09_ 제곱근 구하기 (0) | 2024.07.09 |
---|---|
TIL(Today I Learned) 24.07.08_함수 (0) | 2024.07.08 |
TIL(Today I Learned) 24.07.04_Python_문자열, 변수의 자료형 (0) | 2024.07.04 |
TIL(Today I Learned) 24.07.02 (0) | 2024.07.02 |
TIL(Today I Learned) 24.07.01 (0) | 2024.07.01 |