1. 변수(Variable)
-
정의: 컴퓨터의 메모리 공간에 이름을 붙이는 것으로, 값을 저장하고 참조하기 위해 사용한다.
-
생성: 별도의 선언 없이 변수에 값을 할당(
=)하면 자동으로 생성됩니다. (예:x = 100) -
작동 원리
- 변수는 실제 값을 저장하는 상자라기보다는, 객체(값)가 저장된 메모리 주소를 가리키는(참조하는) 이름표에 가깝다.
id(변수)함수를 통해 객체의 주소값을 확인할 수 있다.
-
이름 짓기 규칙
- 숫자로 시작 불가 (영문자 또는 밑줄 문자로 시작)
- 영문자, 숫자, 밑줄(
_) 사용 가능 - 대소문자 구별
- 공백 포함 불가 (공백이 구분자), 특수 기호 사용 불가, 예약어(키워드) 사용 불가
-
Case
- 낙타체(CamelCase):
myNewCar(단어의 첫 글자를 대문자로) - 뱀체(Snake_case):
my_new_car(단어 사이를 밑줄로 연결) - 보통 변수는 낙타체로, 상수는 대문자로 작성한다.
- 낙타체(CamelCase):
2. 자료형(Data Type)
파이썬은 변수에 저장되는 값에 따라 자료형이 결정된다.
-
주요 자료형
- 정수(int): 소수점 없는 숫자 (예:
100,-5) - 실수(float): 소수점 있는 숫자 (예:
3.14,10.0) - 문자열(str): 따옴표로 감싸진 문자들의 나열 (예:
"Hello",'Python')
- 정수(int): 소수점 없는 숫자 (예:
-
cf. 표준 자료형
- 숫자
- 정수(integer;
%d) - 부동소수점(floating-point;
%f) - 복소수
- 정수(integer;
- 시퀀스(수열)
- 리스트(list)
- 튜플(tuple)
- 문자열(string;
%s)
- 부울형
- 숫자
-
객체의 특징
- 불변 객체(Immutable): 정수, 실수, 문자열, 튜플 등은 한 번 생성되면 값을 변경할 수 없음 (값이 바뀌면 새로운 객체가 생성됨)
- 가변 객체(Mutable): 리스트, 딕셔너리 등은 값을 변경 가능함
3. 연산자(Operators)
-
산술 연산자
+,-,*,/(나눗셈, 실수 결과)//(정수 나눗셈, 몫)%(나머지)**(지수/거듭제곱)
-
할당(대입) 연산자(Assignment Operator)
=: 값을 변수에 저장- 다중 할당:
x = y = z = 0(여러 변수 초기화),x, y = 10, 20 - 값 교환:
x, y = y, x(파이썬 특유의 편리한 기능)
-
복합 대입 연산자
+=,-=,*=,/=등 (예:x += y는x = x + y와 동일)
| 기호 | 연산자 | 사용례 | 결괏값 | 복합 연산자 |
|---|---|---|---|---|
* | 곱셈 | 2*7 | 14 | *= |
** | 지수(power) | 2**7 | 128 | - |
/ | 실수 나눗셈 | 7/4 | 1.75 | /= |
// | 정수 나눗셈 | 7//4 | 1 | - |
& | 나머지 | 7%4 | 3 | %= |
- 연산자 우선순위
- 괄호
()> 지수**> 곱셈/나눗셈*,/> 덧셈/뺄셈+,-
- 괄호
4. 문자열(String)
-
표현: 큰따옴표(
") 또는 작은따옴표(')로 감쌈. 여러 줄은 삼중 따옴표("""또는''') 사용 -
연산
+: 문자열 연결 (결합)*: 문자열 반복 (예:"Hello" * 3→"HelloHelloHello")
-
인덱싱: 문자열 내부의 특정 문자에 접근 (0부터 시작, -1은 마지막 문자)
-
특수 문자(이스케이프):
\n(줄바꿈),\t(탭) 등 -
형 변환: 숫자와 문자열은 직접 연산 불가.
str(),int(),float()함수를 사용하여 변환해야 함 -
cf. 문자열 포매팅
- 직접 넣기:
“I eat“, variable, “apples.“ - f-문자열 포매팅:
f“나의 이름은 {variable}입니다.” - 문자열 포맷 코드:
“I eat %d apples.” % 3 - format 함수:
“I eat {variable} apples.“.format(3)
- 직접 넣기:
5. 입력과 출력(Input & Output)
-
입력 (
input())- 사용자로부터 데이터를 입력받을 때 사용
- 무조건 문자열(String) 형태로 반환되므로, 숫자로 계산하려면
int()나float()로 변환해야 함 - 예:
age = int(input("나이를 입력하세요: "))
-
출력 (
print())- 화면에 결과 출력. 콤마(
,)로 여러 값을 나열하여 출력 가능 - 형식화된 출력:
f-string,%서식 지정자 등을 사용해 소수점 자리수 등을 조절 가능
- 화면에 결과 출력. 콤마(
6. 기타
- 주석(Comment):
#뒤의 내용은 실행되지 않으며, 코드 설명이나 임시 비활성화 용도로 사용 - 상수(Constant): 관례적으로 대문자로 이름을 지어 변하지 않는 값임을 표시 (예:
PI = 3.14,TAX_RATE)