암시적 형 변환(Implicit Typecasting)
True + 3 # = 4
3 + 5.0 # = 8.0
3 + 4j + 5 # = (8+4j)명시적 형 변환(Explicit Typecasting)
name = 'Kim'
score = 4.5
print('Hello, %s' % name)
print('내 성적은 %d' % score)
print('내 성적은 %f' % score) # 타입에 따라
name = 'Kim'
score = 4.5
print(f'Hello, {name}! 성적은 {score}') #Hello, Kim! 성적은 4.5
pi = 3.141592
print(f'원주율은 {pi:.3}. 반지름이 2일 때 원의 넓이는 {pi*2*2}')
# 원주율은 3.14. 반지름이 2일 때 원의 넚이는 12.566368
range(n, m, s) : n부터 n-1까지 s만큼 증가
숫자 시퀀스를 나타내기 위해 사용
변경 불가능 immutable하며 반복가능함 iterable
range(3) # = range(0, 3)
list(range(0, 3)) # [0, 1, 2]
type(range(3)) # <class 'range'>
list(range(1, 5, 2)) # [1, 3]
# 역순
list(range(6, 1, -1)) # [6, 5, 4, 3, 2]
위에서 아래로 순차적 명령 수행
특정 상황에 따라 코드 선택적 실행/반복하는 제어 필요
제어문은 flow chart로 표현 가능
if expression :
~ code ~
else :
~ code ~
if expression :
~ code ~
elif expression :
~ code ~
elif expression :
~ code ~
else :
~ code ~
if expression :
~ code ~
if expression :
~ code ~
else :
~ code ~
조건식이 참인 경우 반복적으로 코드 실행
기본 형식
while expression :
~ code ~
예시
a = 0
while a < 5 :
print(a)
a += 1
시퀀스를 포함한 순회가능한 객체(iterable)의 모든 요소 순회
순회가능한 객체 : string, tuple, list, range, set, dictionary
기본 형식
for 변수명 in iterable :
~ code ~
예시
chars = input() # apple
for index in range(len(chars)) :
print(chars[index], end=" ")
# a p p l e
cf) print 시
기본값은 모두 출력 후 \n이며 변경 가능
list(enumarate(['A', 'B', 'C']))
# = [(0, 'A'), (1, 'B'), (2, 'C')]enumerate()로 감싸줌for i, letter in enumerate('apple') :
print(i, letter)
# 0, a \n 1, p \n 2, p \n, 3, l \n 4, estart= 사용for i, word in enumerate(['a', 'b', 'c'], start=1) :
print(i, word)
# 1, a \n 2, b \n 3, cbreak : 해당 반복문 종료
continue : continue 이후의 코드 블럭 실행하지 않고 다음 반복 수행
for-else : 끝까지 반복문 실행된 이후에 실행됨
for char in 'apple' :
if char == 'b' :
print('b!')
break
else :
print('b가 없습니다.')