조건문
: 파이썬에서는 어디까지 구문에 포함되는지를 들여쓰기로 구분한다
: 파이썬에서는 함수 ,클래스, 조건문(if), 반복문(for, while) 등의 코드 블록을 정의할때 ' : ' 콜론을 사용
: 콜론 이후에는 들여쓰기를 통해 코드 블록이 시작
* 들여쓰기: tab
당겨쓰기: shift + tab
* 콜론(' : ") 의 사용
- 코드 블록 정의
- 슬라이싱 (a[1:4]) # 1부터 4까지
- 딕셔너리에서 키와 값 사이를 구분 ("age" : 30) # age 값 30
if 문
money = 3000
if money > 3800:
print('택시를 타자!')
else:
print('택시를 못타~')
print('그럼 뭘타지?')
# 택시를 못타~
# 그럼 뭘타지?
money = 3000
if money > 3800:
print('택시를 타자!')
elif money > 1200:
print('버스를 타자!')
else:
print('걸어가자!')
# 버스를 타자!
# money 가 3800원 보다 크다 '택시를 타자!'(if 조건 만족)
그 외 '택시를 못타~' '그럼 뭘타지?'(else 조건 불만족)
# print 문을 추가함으로써 두가지 문구 출력 가능
# money 가 3800원 보다 작다
money 가 1200원 보다 크다 '버스를 타자!'(elif 조건 만족)
for 반복문(loop)
for 변수 in 객체:
실행할 코드
* 객체에는 리스트(list), 튜플(tuple), 문자열(iterator) 등 순회가 가능한 웬만한 모든 데이터 타입
for 문을 사용하지 않고 출력하기
fruits = ['사과', '배', '감', '귤']
print('사과')
print('배')
print('감')
print('귤')
# 사과
# 배
# 감
# 귤
for 문 사용하여 출력하기
fruits = ['사과', '배', '감', '귤']
for fruit in fruits:
print(fruit)
# 사과
# 배
# 감
# 귤
for 문과 if 문 사용
people = [
{'name': 'bob', 'age': 20},
{'name': 'carry', 'age': 38},
{'name': 'john', 'age': 7},
{'name': 'smith', 'age': 17},
{'name': 'ben', 'age': 27},
{'name': 'bobby', 'age': 57},
{'name': 'red', 'age': 32},
{'name': 'queen', 'age': 25}
]
for person in people:
name = person['name']
age = person['age']
if age < 20:
print(name, age)
# john 7
# smith 17
# people 을 반복할때마다 코드를 실행하여 person 에 저장
# if 조건문으로 나이가 20보다 큰 사람만 출력
enumerate() 함수
: 인덱스와 원소에 접근하며 루프 돌리기
fruits = ['사과', '배', '감', '귤','귤','수박']
for i, fruit in enumerate(fruits):
print(i,fruit)
# 0 사과
# 1 배
# 2 감
# 3 귤
# 4 귤
# 5 수박
# 인덱스와 원소 각각 출력
# i 변수를 사용하지 않을 경우 (0, '사과') (1, '배') ... (5, '수박') 으로 출력
break 로 반복문 끝내기
fruits = ['사과', '배', '감', '귤','귤','수박','참외','감자','배','홍시','참외','오렌지']
for i, fruit in enumerate(fruits):
print(i, fruit)
if i == 4:
break
# 0 사과
# 1 배
# 2 감
# 3 귤
# 4 귤
# i 가 4 일때 반복문 끝내기
반복문의 여러가지 사용법
num_list = [1, 2, 3, 6]
for num in num_list:
if num % 2 == 0: # 짝수만 나오려면, 2로 나눴을때 나머지가 0이어야 한다.
print(num)
# 2
# 6
count = 0
for num in num_list:
if num % 2 == 0:
count += 1 # 짝수일때, count=count + 1
print(count)
# 2
sum = 0
for num in num_list:
sum += num # 1+2+3+6, sum=sum+num
print(sum)
# 12
max = 0
for num in num_list:
if max < num:
max = num # max 보다 num 이 크면 저장
print(max)
# 6
#
sum 이 0 이었고 num 이 1 이면 sum은 1
sum(0) = sum(0)+num(1)
sum(1) = sum(1)+num(2)
sum(3) = sum(3)+num(3)
sum(6) = sum(6)+num(6)
sum(12)
#
변수보다 크면 저장
함수
: 반복적으로 사용하는 코드에 이름을 붙여놓은 것
: 긴코드를 짧게 축약할 때 사용
def hello():
print('안녕!')
print('좋은 날씨야')
hello()
# 안녕!
# 좋은 날씨야
# def 축약할이름():
축약할코드1
def sum(a,b):
return a+b
result = sum(1,2)
print(result)
# 3
# def 이름():
return 반환값
def bus_rate(age):
if age > 65:
print('무료입니다')
elif age > 20:
print('성인입니다')
else:
print('청소년입니다')
bus_rate(15)
bus_rate(70)
bus_rate(30)
# 청소년입니다
# 무료입니다
# 성인입니다
# def 이름():
if 조건문
int () 로 숫자형 바꾸기
def check_gender(pin):
num = pin.split('-')[1][:1] # '-' 로 나누어서 1번째에서 1번째로 시작하는 숫자
if int(num) % 2 == 0: # 그 숫자가 2로 나누었을때 0이면 짝수(여성)
print('여성')
else:
print('남성')
my_pin = "200101-3012345"
check_gender(my_pin)
# 남성
check_gender('150101-2012345')
# 여성
+ 알고리즘 순서
①
def check_gender(pin):
print('...') # 이렇게 시작
check_gender('150101-2012345')
check_gender('150101-3012345')
check_gender('150101-2012345')
②
def check_gender(pin):
num = pin.split('-')[1][:1] # pin 값을 '-' 로 나누어서 1번째에서 1번째로 시작하는 숫자(2,3,2)
if int(num) % 2 == 0: # 'num' 이 문자열 이기 때문에 int() 를 사용하여 숫자형으로 변환 후 계산
print('여성') # 그 숫자가 2로 나누었을때 0이면 짝수(여성)
else:
print('남성')
'TIL' 카테고리의 다른 글
2024-03-27 (0) | 2024.03.27 |
---|---|
2024-03-26 (0) | 2024.03.26 |
2024-03-25 (0) | 2024.03.25 |
2024-03-24 / 3 (1) | 2024.03.24 |
2024-03-24 / 2 (1) | 2024.03.24 |