코야온니의 티스토리 :)
3-2. 파이썬 - 기초 문법 본문
1. 사칙연산
- 더하기 + , 빼기 -
- 나눗셈 / , 곱하기 *
- 몫 // , 나머지 % ( 몫, 나머지 한번에: result = divmod(10, 3) 이라면 result[0] → 3, result[1] → 1 )
- 거듭제곱 ** ( 2**2 → 4 )
2. 조건문 *
- 조건에 따라 참과 거짓을 판단하는 문장
- 비교 연산자를 기준으로 참/거짓을 판단 → 조건문 안에 있는 동작문을 순차적으로 실행
- 비교 연산자: >, <, >=, <=, ==, !=
- 논리 연산자: A and B, A or B, not A (A, B: 비교 연산자를 사용한 조건문)
- 그 밖의 연산자: A in / not in " 리스트 / 튜플 / 문자열 "
#1. 비교 연산자
sleepy = True # 조건문
if sleepy == True:
print("커피를 마신다") # 동작문 A
else:
print("차를 마신다") # 동작문 B
>>> 커피를 마신다
#2. in 연산자
status = ['happy', 'angry', 'sleepy']
if 'sleepy' in status:
print("커피를 마신다")
elif 'sad' in status:
print("술을 마신다")
else:
print("차를 마신다")
>>> 커피를 마신다
3. 반복문 *
- 조건문이 거짓이될 때 까지 반복을 명령하는 구문
1. for 문: 변수를 받아 반복
# for문
for a in [1,2,3]:
print(a)
>>> 1 2 3
drink = ['커피', '차', '물']
for item in drink:
print('{} 을(를) 마셨습니다!'.format(item))
if item=='차':
break
>>> 커피 을(를) 마셨습니다!
차 을(를) 마셨습니다!
2. while 문: 일정 조건까지 반복
# while문
a = 0
while a < 3:
a = a + 1
print(a)
>>> 1 2 3
sleepy = True
awake_point = 3 # 잠이 깨는 시점
num_coffee = 0
while sleepy==True: # 조건 1 : 잠이 오면, 아래 실행
num_coffee = num_coffee + 1
print('커피를 {} 잔 마셨습니다!'.format(num_coffee))
if num_coffee >= awake_point: # 조건 2 : 잠이 깨는 시점이 되면, 아래 실행
sleepy = False
print('더이상 잠이 오지 않습니다')
if num_coffee >= max_coffee: # 조건 3 : 커피가 떨어지면, 아래 실행
print('커피가 다 떨어졌습니다')
break
>>> 커피를 1 잔 마셨습니다!
커피를 2 잔 마셨습니다!
커피를 3 잔 마셨습니다!
더이상 잠이 오지 않습니다
4. 함수
- 입력 값을 받아서 일정한 처리를 진행하고 출력값을 반환하는 장치
- 반복되는 작업을 묶어서 재사용 할 수 있도록 해주기 때문에 매우 중요
- 함수의 구조화 ↑ → 가독성↑, 유지보수하기 쉬워짐 (재사용성 향상) → 코드의 생산성 향상
- 기본 문법
- def 함수명(입력인수):
return 출력인수
- def 함수명(입력인수):
- 함수 만드는 법
- 기존 코드를 설계할 때부터 함수로 작성
- 재구조화 (refactoring): 기능을 하는 코드 만들고, 잘 실행되는 것을 확인한 후 보충해감
def drink_beverage(drink):
for item in drink:
print('{} 을(를) 마셨습니다!'.format(item))
# function call (정의된 함수를 사용해 code block 내의 코드를 실행하는 것)
drink_beverage(['커피', '차', '물']) ''' 함수 사용 1
drink_beverage(['콜라', '사이다', '우유']) ''' 함수 사용 2
>>> 커피 을(를) 마셨습니다!
차 을(를) 마셨습니다!
물 을(를) 마셨습니다!
콜라 을(를) 마셨습니다!
사이다 을(를) 마셨습니다!
우유 을(를) 마셨습니다!
# return 추가하여 출력값 활용하기
return len(drink), drink[-1]
num_drink, last_drink = drink_beverage(['커피', '차', '물'])
print('총 {} 잔 마셨습니다'.format(num_drink))
print('마지막으로 {} 을(를) 마셨습니다'.format(last_drink))
>>> 총 3 잔 마셨습니다
마지막으로 물 을(를) 마셨습니다
5. 이외 파이썬 고급 기능
1. List Comprehension
- 리스트를 빠르고 쉽게 생성할 수 있음
- 기본 문법
- 리스트형 = [변수 for 변수 in [변수1, 변수2, 변수3, ...]]
- 리스트형 = [변수 for 변수 in [변수1, 변수2, 변수3, ...] if 조건문 ]
new_list = [elem for elem in range(10) if (elem % 2) == 1]
new_list
>>> [1, 3, 5, 7, 9]
2. 예외 처리
- 오류가 발생할 때 오류를 무시하거나, 오류 유형에 따라 이후 조치를 추가해 주는 기능
- 기본 문법
- try문: 우선적으로 실행할 구문 ...
- except문 : 오류 발생 시 실행할 구문 ...
def error_function(input):
for i in range(10):
try:
result = input / i
print(result)
#1. 오류 무시
except:
pass
error_function(10) >>> 10/0 이라는 오류는 무시하고, 10/1부터 실시됨.
#2. 예상되는 예외만 지정하여 처리
except ZeroDivisionError: # 0으로 나누었을 때 발생하는 에러만 무시
pass
error_function('10') >>> 1번 방법과 달리 문자열을 넣어 발생하는 오류도 감지할 수 있음.
3. 프로그램 모듈화
- 작성한 Python 코드를 실제 동작할 수 있는 프로그램처럼 만드는 방법
- 모듈화된 코드 → 다른 외부 장치에서도 import / 실행 가능
- 기본 모듈화 과정
- 프로그램 내용이 담긴 main() 함수를 만들어 줍니다
- if __name__=="__main__": 구문을 코드 가장 하단에 추가해 줍니다
- main() 함수를 추가된 구문에 들여쓰기를 맞춰서 실행될 수 있도록 합니다
- .py 파일을 만들어 주고, 프로그램 내용을 붙여넣습니다
- .py 파일을 실행합니다
# 모듈화 샘플 코드 (1~3 과정)
def main():
item = input('당신이 가장 좋아하는 것은 무엇입니까?')
print('저도 {} 을(를) 참 좋아합니다!'.format(item))
if __name__=="__main__":
main()
# module_sample.py 파일 만든 이후 프로그램 실행 (4~5 과정)
!python module_sample.py
'데이터 분석 부트 캠프 > 기타 정리' 카테고리의 다른 글
3-4. 파이썬 - 시각화 라이브러리 ( Seaborn, Matplotlib, Pyplot ) (0) | 2023.07.09 |
---|---|
3-3. 파이썬 - 전처리 라이브러리 ( Numpy, Pandas ) (1) | 2023.07.09 |
3-1. 파이썬 - 개념 (0) | 2023.07.09 |
2. 엑셀 - 데이터 분석 Tool (0) | 2023.07.09 |
1. 데이터 분석 개념 (0) | 2023.07.09 |