파이썬은 내게 궁금하지만 어렵고 먼 언어였다. 첫 취준 시기에 파이썬을 간단히 배웠지만 정말 기초 수준이었고, 부트캠프 시작 전에는 파이썬 새 파일을 어떻게 생성하는지조차 잊어버린 상태였다.
부트캠프 시작 후 일주일이 지난 지금, 파이썬은 내게 어렵지만 가까운 언어가 되었다. 시작 전엔 한 주만에 파이썬 기초를 뗄 수 있을 거라고 생각하지 못했는데, 지금은 문제 풀이 강의를 들으며 즐겁게 코딩해나가고 있는 게 신기하고 뜻깊다.
요 며칠 공부를 제대로 하지 못한 날이 많아서, 주말은 물론이고 새벽까지 공부를 이어 나가고 있다. 그래서 월요일에는 아슬하게나마 진도를 따라가고 있다.
정신없는 와중에도 내가 푼 것과 다른 방식으로 강의에서 예제를 설명할 때, 그걸 추가로 배워 나가는 일이 즐겁다. 다만 수학적 사고를 한지 오랜 시간이 지나 문제 하나를 이해하는 데에도 꽤 시간이 걸리는 점이 아쉽다.



어떤 조건에 따라 실행이 분기되는 식
⇒ A if 조건식 else B: 조건식 결과가 True이면 A 실행, False이면 B 실행
#ex
numResult = True if num1 > num2 else False
cf. 조건문 중간에 엔터를 치면 역슬래시()와 함께 개행. 역슬래시는 이어지는 수식임을 표시.
+ operator 모듈을 사용하면 더 간편하고 효율적으로 코딩을 진행할 수 있다.
제어문이란? 프로그램을 제어하는 구분으로, 조건문과 반복문으로 구분된다.
if문: True일 경우 실행, False일 경우 미실행
if~else문: 조건식 결과에 따라 둘 중 하나가 실행
삼항연산자 ⊃ if~else문
- 모든 조건식 (삼항연산자)은 if~else문으로 변경 가능하다.
- 모든 if~else문이 삼항연산자로 변경 가능한 것은 아니다.
result = '가능' if userPoint >= minAblePoint else '불가능'
print ('포인트 사용 가능 여부: {}'.format(result))
print('포인트 사용 가능') if userPoint >= minAblePoint else print('포인트 사용 불가')
* =>
if userPoint >= minAblePoint:
print('포인트 사용 가능')
else:
print('포인트 사용 불가')
여러 가지 조건식 결과에 따라 실행문 결정
- if~ elif~ elif~ (…) ~else문으로 구성
- else 이후 조건은 생략 가능하다.
- 상단 elif문 조건이 만족되었을 경우 하단 elif문은 실행하지 않는다.
- 조건식 코딩 시 유의: 논리 에러가 발생할 수 있다.
- 범위가 작은 것 → 큰 것 순서로 코딩
- 조건 범위 명시: 순서와 무관
조건문 내 또 다른 조건문을 선언
- (* 단, 코딩 오류 방지를 위해 통상 2~3가지 중첩 조건문까지만 사용한다.)
- 반복문이란? 특정 실행을 반복하는 것.
- 반복문을 사용하면 프로그램이 간결해지고, 유지/보수가 쉽다.
- 반복문(for문) 종료 후 실행문 시작 시 코드블록으로 구분한다.
for i in range (횟수): # :(콜론) 반복문 종료 선언, 실행문 시작
print('i -> {}'.format(i))
조건식이 false가 되는 경우 (조건 관련 실행문)
startNum = int(input('반복 시작 입력: '))
endNum = int(input('반복 종료 입력: '))
for i in range (startNum, (endNum+1)) #종료 번호 +1. input 구문 끝에서 +1 해도 실행 가능
print (i)
- range(반복횟수)의 경우 (시작, 끝, 단계)로 기재
- 시작: 0부터 시작 (생략시 0, 반복 횟수 필요 시 필수 기재)
- 끝: (끝-1)회까지 실행
- 반복: 증가 숫자 기재 (생략시 1)
while 조건식:
실행문
조건식이 false가 되는 경우 (조건 관련 실행문)
# 조건식이 false가 되는 경우를 생략할 시 무한루프 발생
# num이 20이 될 때까지 1씩 증가한다.
num = 0
while (num < 20):
print('num -> {}. format(num))
num +=1
- 횟수의 반복일 경우 for문이 간략하다.
- 조건 반복일 경우 while문이 적합하다.
- while문에서 조건식의 결과가 항상 True인 경우 무한으로 반복한다.
- 조건식에 논리형 데이터를 사용하여 무한 반복 실행하여 무한 루프를 활용할 수 있다. (▼)
flag = True
num = 0
sum = 0
while flag:
num += 1
sum += num
print(f'{num}까지의 합 {sum}')
if sum >= 1000:
flag = False #flag가 False가 되며 루프가 종료된다.
- 반복실행 중 continue를 만나면 다음 반복 실행문으로 넘어간다.
- 실행문 내 else의 실행문은 반복문 종료 후 실행된다. (반복문의 모든 실행문이 종료된 후 실행)
- break로 중단되면 반복문 코드블럭 내 작성된 else 실행문도 미실행된다.
- break: 실행문 정지, 다음 코드 미실행
- 반대 개념 continue: 오류 발생 시에도 해당 반복을 skip하고 진행
sum = 0
searchNum = 0
for i in range (100):
sum += 1
if sum > 100:
searchNum = i
break #반복문 종료