이번 글도 코드잇 강의를 수강하면서 정리한 것들이 주가 되어 이루어져 있습니다. (코드잇 스프린트 데이터 애널리스트 트랙 1기 훈련생)
자료형
숫자형(정수형과 소수형으로 크게 나누어짐)
- 숫자형 연산 수식의 종류
- 기본적인 연산 수식 : +(더하기), -(빼기), *(곱하기), /(나누기)
- // : 버림 나눗셈(몫 연산) ex) 10 // 3 = 3
- % : 나머지 연산 ex) 10 % 3 = 1
- ** : 거듭제곱 ex) 2 ** 3 = 8
- round : 반올림
print(round(3.1415926535)) # round()안에 반올림하는 숫자를 넣고, 반올림할 자릿수를 지정하고 싶다면 숫자 뒤 , 다음으로 원하는 자릿수를 적는다.
print(round(3.1415926535, 2)) # 둘째자리까지 반올림
- 연산 관련 주의사항
- 정수형끼리의 연산의 결과값은 정수형으로 출력된다.
- 정수형이 소수형과 연산되거나 소수형끼리 연산될 경우 결과값은 무조건 소수형이다.
- 소수형 결과값에서 정수형으로 바꾸고 싶다면 int() 명령어를 사용한다.
- 나누기 연산은 정수형이든 소수형이든 상관없이 결과가 소수형으로 나옴
- 파이썬도 일방적인 사칙연산에 따름
문자형
키보드로 쓸 수 있는 문자들을 표현하는 자료형이다.
큰따옴표나 작은따옴표 안에 있는 것들을 파이썬에서 문자열로 분류한다.
# 문자열 안에 따옴표를 쓰는법
print("I\'m \"excited\" to learn python") # 문자열에 쓴 따옴표 앞에 \를 같이 쓴다.
불린형
참과 거짓을 표현하는 자료형이다.
불 대수
- 일상적인 논리를 수학적으로 표현한 것
- 불 대수의 연산 → and, or, not
- and 는 둘 다 True여야 True, 하나라도 False라면 False
- or 는 둘 중 하나라도 True라면 True
- not은 반대로 바꾼다
형변환
값을 한 자료형에서 다른 자료형으로 바꾸는 것이다.
int() #정수형으로 변환
float() #소수형으로 변환
str() #문자열로 변환
#형 변환을 활용한 예제
print(int("4") + int("5")) -> 25가 아니라 9가 출력됨
print(str(3) + str(5)) -> 35 출력
문자열 포매팅(string formatting)
다른 자료형이 섞인 문자열을 간단히 코딩하기 위해서 활용한다.
인덱스를 활용하여 포매팅이 들어가는 순서를 바꿀수 있다.
print("저는 {}, {}, {}를 좋아합니다.".format("해리 케인", "손흥민", "워렌 버핏")) # 해리 케인, 손흥민, 워렌 버핏 순서대로 포매팅
print("저는 {1}, {0}, {2}를 좋아합니다.".format("해리 케인", "손흥민", "워렌 버핏")) # 손흥민, 해리 케인, 워렌 버핏 순서대로 포매팅
숫자형 연산이 있는 포매팅에 소수점 아래로 많은 수가 있는 값이 있을 경우 반올림도 가능하다.
print("{0} 나누기 {1}은 {2:.2f}입니다.".format(num_1, num_2, num_1/num_2)) # :.2f는 콜론뒤로 f는 소수형을 나타내며 .2는 소수 둘째자리에사 반올림하는 것을 뜻한다.
print("{0} 나누기 {1}은 {2:.0f}입니다.".format(num_1, num_2, num_1/num_2)) #.0f로 쓰게되면 정수형으로 출력된다.
포매팅에는 3가지 방법이 활용된다. (1가지는 오래되어 잘 쓰지 않아 설명하지 않음)
year = ~ #원하는 년도, 달, 일 할당
month = ~
day = ~
#문자열 포매팅
print("오늘은 {}년 {}월 {}일입니다.".format(year, month, day)) # 가장 많이 사용되는 방법
print(f"오늘은 {year}년 {month}월 {day}일입니다.") # 최근에 추가된 방식으로 편리함
변수의 지정연산자
지정 연산자(assignment operator) : 오른쪽에 있는 값을 왼쪽에 있는 변수에 넣는 것
# 간단한 예
x = 2
x = x + 2 # 오른쪽에 있는 x+2 가 연산되어 4라는 값을 갖게되고, 지정연산자에 의해 왼쪽에 있는 x에 4라는 값이 새로 할당되게 된다.
# x = 4
그래서 파이썬에서 등호의 의미는 절대 ‘같다’의 의미가 아니고 지정연산자로 생각해야 합니다.
함수의 return과 print
print는 ()안에 있는 명령을 즉각적으로 출력해주며,
return은 값을 돌려주고 함수를 즉시 종료하는 역할을 합니다.
# 함수 즉시 종료 예시
def square_1(x):
print("함수 호출 전")
return x * x
print("함수 호출 후") # return으로 인해 함수가 종료되어 코드가 소용이 없음 -> 이걸 데드 코드(의미 없는 코드)라고 함
print(square_1(3)) # 함수 호출 전과 9까지만 출력된다.
print("Hello World! ")
return과 print의 차이
def print_square(x):
print(x * x)
def get_square(x):
return x * x
print(print_square(3)) # 위 코드를 실행할 경우 9와 none이 차례대로 출력됨
# get_square의 값을 출력하고 싶다면 print 필요
옵셔널 파라미터
파라미터에 '기본값(default value)'을 설정하는 것으로 기본값을 설정해 두면, 함수를 호출할 때 파라미터에 값을 꼭 넘겨주지 않아도 됩니다.
def myself(name, age, nationality="프랑스"):
print("내 이름은 {}".format(name))
print("나이는 {}살".format(age))
print("국적은 {}".format(nationality))
myself("ourkofe", 25, "영국") # 옵셔널 파라미터를 제공하는 경우
print()
myself("ourkofe", 25) # 옵셔널 파라미터를 제공하지 않는 경우
# 첫번째 myself을 출력하게 되면 영국이 출력된다 두번째 myself를 출력하면 nationality 파라미터가 제공되지 않아 함수에서 기본값으로 제공한 프랑스로 출력된다
🚨주의사항🚨 옵셔널 파라미터는 무조건 마지막에 설정해야 한다. 마지막이 아니면 오류가 발생한다.
syntatic sugar
자주 쓰이는 표현을 더 간략하게 쓸 수 있게 하는 문법이다.
# 다음 두 줄은 같다
x = x + 3
x += 3
# 다음 두 줄은 같다
x = x + 12
x += 12
# 다음 두 줄은 같다
x = x * 5
x *= 5
# 다음 두 줄은 같다
x = x - 4
x -= 4
# 다음 두 줄은 같다
x = x / 3
x /= 3
# 다음 두 줄은 같다
x = x % 5
x %= 5
로컬변수와 글로벌변수
변수의 scope은 변수가 사용 가능한 범위로 로컬변수와 글로벌변수로 구분한다.
로컬변수 : 변수를 정의한 함수 내에서만 사용 가능
글로벌변수 : 코드 내 모든 곳에서 사용 가능
그래서 함수에서 변수를 사용하면, 로컬 변수를 먼저 찾고 나서 글로벌 변수를 찾는다.
상수
절대로 바뀌지 않는 수
상수의 이름 규칙
항상 대문자로 작성한다.
while 반복문
사람이 하기 귀찮은 일을 컴퓨터에게 반복시키기 위해 while 반복문을 사용한다
while문 구조
# while문 구조
while 조건 부분: # 조건 부분은 불린값으로 계산되는 식 / 조건부분이 True인 동안 수행 부분이 계속해서 실행됨 / False가 나올 경우 while문에서 나옴
수행 부분 # 반복하고 싶은 수행 부분
# while문 예시
i = 1
while i <= 3:
print("나는 잘생겼다!")
i += 1
if와 else문
if와 else 상황별로 동작을 다르기 하기 위해 사용한다.
if문 구조
# if문 구조
if 조건 부분: # 조건부분은 while과 동일하게 불린값으로 계산되는 식
수행 부분 # 조건을 충족했을 때 실행하고 싶은 부분
else문 사용과 구조
if 조건 부분:
수행 부분 # if의 조건이 True라면 현재 수행 부분 출력
else:
수행 부분 # if의 조건이 False라면 현재 수행 부분 출력
elif문
if와 else를 사용한 코드가 길어져 보기 힘들때 elif를 활용하여 코드를 간단하게 작성할 수 있다.
a = 80
if a >= 90:
print('A')
elif a >= 80:
print('B')
elif a >= 70:
print('C')
else:
print('D')
이번 글에서는 자료형 / 함수와 변수를 다루는 추상화 / while,if,else,elif를 활용한 제어문이 포함된 내용을 정리했으며, 파이썬을 통해 코드를 작성하는 경우에 모두 필수적인 개념들로 꼭 잊지 말고 알아가야 하는 내용인 것 같습니다.
글 읽어주셔서 감사합니다~!
출처 및 참고자료 : 코드잇 사이트 강의 '프로그래밍 핵심 개념' https://www.codeit.kr/topics/core-concept-of-python-programming
'프로그래밍 언어 > Python' 카테고리의 다른 글
[파이썬 개념 정리 6]Matplotlib 라이브러리 개념 정리 (0) | 2024.06.29 |
---|---|
[파이썬 개념 정리 5]Numpy 라이브러리 개념 정리 (0) | 2024.06.29 |
[파이썬 개념 정리 4]파이썬 응용 개념 정리 (0) | 2024.06.28 |
[파이썬 개념 정리 3]파이썬의 개념 기초 정리 3️⃣ (0) | 2024.06.28 |
[파이썬 개념 정리 1] 파이썬의 개념 기초 정리 1️⃣ (0) | 2024.06.21 |
데이터 분석을 공부하고 카페를 열심히 돌아다니는 이야기
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!