[1일차] 파이썬 계산
2022. 12. 19. 23:18ㆍ데이터 엔지니어링 과정/python
목차
1. 간단한 사칙연산
2. 거듭제곱과 나머지
3. 과학적 표기법
4. 지수 표현과 변화
5. 논리 연산 및 비교 연산
1. 간단한 사칙 연산
1. 덧셈, 뺄셈, 곱셈, 나눗셈
- +, -, *, / 사용
2. 정수와 실수
- 정수: 자연수와 음수, 그리고 0
- 실수: 유리수와 무리수
3. 복잡한 연산
- 연산 규칙: 괄호 > 지수 > 곱셈과 나눗셈 > 덧셈과 뺄셈
4. 타입
type(3)
type(1.2)
- 변수의 자료형을 알 수 있다.
- int, float, str, tuple 등으로 나타난다.
2. 거듭제곱과 나머지
1. 거듭제곱(지수)
- 거듭제곱 연산자 = **
2 * 2 * 2 * 2 * 2
2 ** 5
⬆둘은 생긴 건 다르지만 결국 같은 결과를 가져옴!
1.5 ** 2
2 ** (1/2)
- 실수에도 거듭제공이 가능하다. (code 1)
- 지수가 정수가 아니더라도 가능하다. (code 2)
- **(1/2)는 루트를 의미한다.
2. 나머지와 몫
- %는 나머지
- //는 몫
3. 과학적 표기법
3 * 10 ** 8
- 10의 거듭제곱은 en 형식으로 편하게 입력이 가능하다.
- 즉, 위의 코드를 3e8로 입력해도 같은 결과를 도출한다.
- ❗주의❗ 항상 숫자가 앞에 있어야 함 e8 (x)
1e15
1e16
1e-4
1e-5
- 출력에서도 사용할 수 있다.
- 1e15와 같은 경우, 자연수로 결과가 도출되지만, 1e16은 숫자가 크기 때문에 1e+16으로 출력된다.
- 1e-4는 0.0001이지만, 1e-5는 1e-05로 출력된다.
4. 지수 표현과 변화
1. 각 10진법, 2진법, 8진법, 16진법 표기 후 10진법 출력
- 표기방법
- 2진법: 0b
- 8진법 : 0o
- 16진법: 0x
67
0b1000011
0o103
0x43
- 모두 67을 의미한다.
- 10진법: 67
- 2진법: 0b100011
- 8진법: 0o103
- 16진법: 0x43
2. 2진법 8진법 16진법으로 출력 (단, 문자열로 출력됨)
bin(17)
oct(17)
hex(17)
- 같은 17을 입력했지만, 진법이 다르기 때문에 결과도 다르게 출력된다.
- bin(17) ➡ 10001
- oct(17) ➡ 21
- hex(17) ➡ 11
3. 연산 후 변환
0b10 * 0o10 + 0x10 - 10
bin(0b10 * 0o10 + 0x10 - 10)
oct(0b10 * 0o10 + 0x10 - 10)
hex(0b10 * 0o10 + 0x10 - 10)
5. 논리 연산 및 비교 연산
1. 불린연산 (Boollean operation)
- 참과 거짓에 대한 연산
- True는 참, False는 거짓
2. 논리연산자
- AND: 모두 참일 때만 참
- OR: 하나만 참이여도 참
- NOT: A가 참이면 거짓, 거짓이면 참 (청개구리🐸)
3. 비교연산자
print(5 == 3) #같다.
print(5 != 3) #같지 않다.
print(5 < 3) #보다 작다.
print(5 > 3) #보다 크다.
print(5 <= 3) #같거나 작다.
print(5 >= 3) #크거나 같다.
4. 비교연산자의 결과
print(1 > 0 and 2 < 0)
- 불(Bool) 데이터 형식으로 나온다.
- 상단 코드의 경우 True and Flase이기 때문에, Flase로 나온다.
5. 비교연산
- 괄호와 연산이 같이 있으면 괄호가 우선이다.
print((3 < 0) and ((-5 > 0) and (1 > 5)))
print((3 > 0) or ((-5 > 0 ) and (1 > 5)))
print(((3 > 0) or (-5 > 0)) and ((4 > 8) or (3 < 0)))
- 상단 코드 풀이
- (3 < 0) and ((-5 > 0) and (1 > 5))
➡ (3 < 0) and (False and False)
➡ (3 < 0) and False
➡ False and False
➡ False - (3 > 0) or ((-5 > 0 ) and (1 > 5))
➡ (3 > 0) or (False and False)
➡ (3 > 0) or False
➡ True or False
➡ True - ((3 > 0) or (-5 > 0)) and ((4 > 8) or (3 < 0))
➡ (True or False) and ((4 > 8) or (3 < 0))
➡ True and ((4 > 8) or (3 < 0))
➡ True and (False or False)
➡ True and False
➡ False
- (3 < 0) and ((-5 > 0) and (1 > 5))
'데이터 엔지니어링 과정 > python' 카테고리의 다른 글
[6일차] 객체와 클래스 (0) | 2022.12.27 |
---|---|
[5일차] 함수 (0) | 2022.12.26 |
[4일차] 입력과 출력 (2) | 2022.12.22 |
[3일차] 제어문 (if_for_while) (0) | 2022.12.21 |
[2일차] 변수와 자료형 (0) | 2022.12.20 |