1. bool
bool
은 파이썬에서 불리언(Boolean) 값을 나타내는 데이터 타입입니다. 불리언 값은 True
또는 False
두 가지 값만 가질 수 있습니다. 이는 논리 연산이나 조건문에서 자주 사용됩니다.
불리언 값 생성
불리언 값은 다음과 같이 생성할 수 있습니다:
is_true = True
is_false = False
불리언 연산자
불리언 값은 논리 연산자와 함께 사용됩니다:
and
: 두 값이 모두 참일 때 참or
: 두 값 중 하나라도 참일 때 참not
: 값의 반대
a = True
b = False
print(a and b) # False
print(a or b) # True
print(not a) # False
조건문에서의 사용
불리언 값은 조건문에서 조건을 평가하는 데 사용됩니다:
if a:
print("a는 참입니다.")
else:
print("a는 거짓입니다.")
if ((1,2) and False) or ([] or (1)):
# (1,2) and False -> False
# [] or (1) -> True
# False or True -> True
print("True")
# else
if not (3>5 or [1,2]):
print('Hi')
else:
print('else')
불리언으로 변환
다른 데이터 타입을 불리언으로 변환할 수 있습니다. 파이썬에서는 다음 값들이 False
로 평가됩니다:
None
False
- 0 (정수형, 부동 소수점형, 복소수형)
- 빈 시퀀스 (빈 문자열, 빈 리스트, 빈 튜플 등)
- 빈 매핑 (빈 딕셔너리 등)
그 외의 값들은 모두 True
로 평가됩니다:
print(bool(0)) # False
print(bool(1)) # True
print(bool("")) # False
print(bool("Hello")) # True
이와 같이 불리언 값과 연산자는 파이썬에서 매우 중요한 역할을 합니다.
2. 조건문
# if 문을 쓸 때는 위에서 아래로 갈 수록 범위가 좁아지도록 써야한다.
lst=[]
s="Hello"
if lst and s:
print('hi')
elif lst:
print('qwer')
elif s:
print('asdf')
age=40
if age >= 40:
print('안녕하세요 ^^') # 40<=age
if age >= 30:
print('hi 30대') # 30<=age<=40
if age >= 20: # 20<=age<=30 이런식으로 안써도 됨.
print('hi 20대')
3. 반복문, for 문
range()
# list, tuple, dict, set, str -> size()가 존재함.
# for 변수 in size 있는 데이터:
# 반복할 코드
# 구구단
for i in range(2,10):
for j in range(1,10):
print(i*j, end=" ")
keys(), values(), items()
personal_info ={
'name':'홍길동',
'age':25,
'address':'서울'
}
for i in personal_info.keys():
print(i)
for i in personal_info.items():
print(i)
"""
name
age
address
('name', '홍길동')
('age', 25)
('address', '서울')
"""
get()
lst =[
{'name':'홍길동','age':25},
{'name':'김길동','age':30},
{'name':'박길동','age':35},
{'age':40},
{'name':'이길동'},
]
for i in lst:
print(f'이름은 {i.get("name","몰라요")}이고, 나이는 {i.get("age","없어요")}입니다.')
isinstance()
x=('10',)
if isinstance(x,str): # x ===str
print('문자열입니다.')
elif isinstance(x,int):
print('정수입니다.')
else:
print('모르겠어요.')
enumerate()
for i in enumerate(['a','b','c']):
print(i) # (0, 'a') (1, 'b') (2, 'c')
for k,v in enumerate(['a','b','c']):
print(k,v) # 0 a 1 b 2 c
pass
- 설명: 아무 작업도 하지 않는 문.
- 사용 예시: 코드 블록을 비워둘 때 사용.
for i in range(5): if i == 2: pass # 아무 작업도 하지 않음 print(i)
break
- 설명: 반복문을 즉시 종료.
- 사용 예시: 특정 조건에서 반복문을 종료할 때 사용.
for i in range(5): if i == 2: break # 반복문 종료 print(i)
continue
- 설명: 현재 반복을 건너뛰고 다음 반복을 시작.
- 사용 예시: 특정 조건에서 다음 반복으로 넘어갈 때 사용.
for i in range(5): if i == 2: continue # 다음 반복으로 건너뜀 print(i)
이렇게 pass
, break
, continue
는 반복문과 조건문에서 제어 흐름을 조작하는 데 사용됩니다.
else
else
블록이 for
루프 외부에 위치할 수 있는 이유는 Python의 for
루프가 else
절을 지원하기 때문입니다. 이 else
절은 루프가 정상적으로 완료되었을 때 실행됩니다. 즉, 루프가 break
문에 의해 중단되지 않고 끝까지 실행된 경우에만 else
블록이 실행됩니다.
다음은 코드의 동작을 설명하는 예제입니다:
lst = [1, 2, 3, 4, 5]
for i in lst:
if i % 2 == 0:
print("i는 짝수입니다.")
else:
print('Hello World')
# for문이 정상적으로 끝나면 else문 실행
이 코드에서 for
루프는 리스트 lst의 모든 요소를 순회합니다. 각 요소가 짝수인지 확인하고, 짝수일 경우 "i는 짝수입니다."를 출력합니다. 루프가 끝까지 정상적으로 완료되면 else
블록이 실행되어 "Hello World"를 출력합니다.
만약 for
루프가 break
문에 의해 중단되었다면 else
블록은 실행되지 않습니다. 예를 들어:
lst = [1, 2, 3, 4, 5]
for i in lst:
if i % 2 == 0:
print("i는 짝수입니다.")
break
else:
print('Hello World')
# for문이 break로 중단되면 else문 실행 안됨
이 경우 첫 번째 짝수인 2를 만나면 "i는 짝수입니다."를 출력하고 break
문이 실행되어 루프가 중단되므로 else
블록은 실행되지 않습니다.
이와 같은 구조는 while
루프에서도 동일하게 적용됩니다.
'개발공부 > SK Networks Family AI bootcamp 강의노트' 카테고리의 다른 글
첫 주차 회고 (1/10) (0) | 2025.01.10 |
---|---|
4일차 [ 파이썬 기초 (퀴즈/반복문/예외처리) ] (0) | 2025.01.10 |
3일차 [파이썬 기초(자료구조-사칙연산, escaping, 형변환,문자열)] (0) | 2025.01.09 |
2일차 [파이썬 기초 (가상환경,자료구조(변수,상수,비교연산자,슬라이싱))] (0) | 2025.01.08 |
1일차 [마음잡기 / 개발 환경 셋팅] (1) | 2025.01.07 |