박가방
[python_5] 연산자 및 변수 본문
[5] 작성 이유 : 미흡한 연산자에 대해서만 복습을 진행한다.
1. 연산자
1.1 나누기 연산자 몫와 나머지
print(5/2)
2.5
print(5//2) # 몫이므로 소수점을 제외한 정수만 나온다
2
print(5%2) # 나머지
1
1.2 제곱 연산자 : **
print(2**1) # 2가 밑이고 1이 지수인 2의 거듭 제곱수
2
print(2**2)
4
print(2**3)
8
print(2**4)
16
1.3 문자열 연산자 우선 순위 - 사칙연산 그대로 곱셈이 우선된다.
print("반가" + "워요" *3)
반가워요워요워요
1.4 복합 대입 연산자
▶ +=, 숫자 덧셈 후 대입, 다른 연산도 동일함.
1.4.1 문자열 복합대입 연산자
string = "반가워요"
string += "ㅎㅎ"
string += "ㅎㅎ"
print(string)
반가워요ㅎㅎㅎㅎ
2. 변수(variable) - 특정 크기, 타입으로 할당(assignment)된 메모리 공간
▶ 할당이란 변수에 값을 넣는 과정 - 이를 위해 OS와 파이썬 인터프리터가 물리적인 공간을 확보한다
→ 값을 할당한다는 의미 : 컴퓨터 하드웨어인 메모리(memory, HDD,SSD/ flash,SRAM 등)에 저장한다는 의미.
▶ "int a"란 정수형 변수를 선언하며 그 이름이 식별자(identifier) a.
→ "a = 3"란 a 라고하는 메모리 공간에, a 라고하는 메모리 주소에, a라고 하는 변수에 3이란 값을 할당해라.
▶ 값 변경이 불가능한 상수와는 다르게 그 값을 변경할 수 있다.
▶ 컴퓨터는 모든 정보를 0과 1, 즉 2진수(binary number) 체계로 저장. 숫자, 문자 또한 0과 1.
→ 따라서 숫자나 문자로 구성된 정보의 값을 저장하려면 정보의 최소 저장단위인 비트(bit)를 사용함.
→ 메모리는 연속된 데이터 바이트의 모임. 데이터의 종류에 따라 메모리를 차지하는 크기가 다름. 1KB 20MB 등(메모리공간)
3. 파이썬 변수 특징
▶ 동적 타이핑(dynamic typing) - 변수의 메모리 공간을 확보하는 행위가 실행 시점에서 발생
→ 변수의 자료형이 정수(integer)인지 실수(float)인지 인터프리터가 스스로 판단하며 이를 실행 시점에 동적으로 판단함
print (10/3) # 동적 타이핑에 의해 int 형 10과 3
3.3333333 # 동적 타이핑에 의해 float로 반환
▶메모리 공간 할당
→ 파이썬은 할당 받는 메모리 공간도 저장되는 값의 크기에 따라 동적으로 다르게 할당 받을 수 있다.
3. 자료형(data type) - 데이터의 종류에 따라 컴퓨터의 메모리 크기를 정해둔 것을 의미
논리형, 정수형, 실수형, 문자형, 등
4. 자료형 변환
4.1 실수형을 정수형으로 - 내림 주의
a= int(11.8) #내림
11
b= int(11.2) #내림
11
print(12/3.2)
3.75
print(int(12/3.2)) #내림
3
4.2 숫자와 문자형 간 반환
1. 오류 구문, 숫자형과 문자형은 기본 연산 불가능
a = '30.7'
b = flota(a)
print(a)
30.7
print(b)
30.7
print(a+b)
-> Type error
2. 자료형 통일 후 계산
a = '30.7'
a = float(a)
b = a
print(a+b)
4.3 inch 단위를 cm 단위로 변경 - 주의
raw_input = input("인치는")
inch = int(raw_input) #inch = raw_input은 에러가 발생한다 받은 값이 숫자인지, 문자인지 알려줘야함
cm = inch * 2.54
print(inch,"인치는 cm 단위로",cm,"cm입니다")
[1] 데이터 과학을 위한 파이썬 프로그래밍 - 최성철
[2] 혼자 공부하는 파이썬 - 윤인성
'프로그램 언어 > Python' 카테고리의 다른 글
[python_7] 기본적 함수 응용 (0) | 2022.12.30 |
---|---|
[python_6] format() 함수 기능 및 응용 (0) | 2022.12.29 |
[python_4] 부동소수점과 고정소수점 (0) | 2022.12.29 |
[python_3] 문자열 만들기 (0) | 2022.12.29 |
[python_2] 기본적인 파이썬 용어 (0) | 2022.12.28 |