Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- deep learning
- 범죄통계
- Data Scientist
- 파이썬
- data
- SQL
- 멋쟁이사자처럼
- data analyst
- machineleaning
- 데이터 분석가
- 데이터분석가
- DNN
- Deeplearning
- Tableau
- python
- Data Science
- Machine Learning
- EDA
- ai
- numpy
- data analysis
- CNN
- AISCHOOL
- machinelearing
- MachineLearning
- pandas
- 데이터 사이언티스트
Archives
- Today
- Total
Molybdenum의 개발기록
[TIL] 7일차_python_operator_condition_loop _01 본문
▶ 데이터 규모에 따른 스킬들
- 엑셀 : 사용이 간편하며 100만개의 데이터를 소유하나 만들어진 기능만 사용이 가능하고 속도가 느리다.
- 파이썬 : 파이썬 문법을 배워야 하며 데이터 RAM 용량만큼 사용이 가능하며 기능을 만들어서 사용이 가능하고 속도가 빠르다.
- 파이썬 : 가상메모리(DASK)를 사용
- 데이터 베이스 : SQL 문법을 배워야 하며 데이터 SSD(HDD)용량만큼 사용이 가능하며 속도가 빠르다.
- 빅데이터 : 여러 개의 컴퓨터를 1대의 컴퓨터처럼 사용이 가능하다. -> SPARK를 사용 : scala 언어, python
▶ 연산자 : CPU를 사용하는 방법
- 산술 : +, -, *, /, //, %, ** : 데이터(int, str, list) + 데이터 = 데이터 -> 연산자 우선순위가 존재
- 데이터 타입에 따라 다르게 연산을 수행한다.
d1, d2, d3, d4 = 1, 2, '3', '4'
d1 + d2, d3 + d4
(3, '34')
- 할당 : 식별자 <산술> = 데이터
- 비교 : ==, !==, >, <. >=, <= : 데이터 + 데이터 = 논리값 : 조건이 1개
- 논리 : not, and, or : 논리값 + 논리값 = 논리값 : 조건이 2개 이상
- 멤버 : 특정 데이터가 컬렉션 데이터에 포함되었는지 확인하여 결과 논리값을 출력한다.
▶ 산술연산자
- 데이터 타입의 형변환 : int(), float(), bool(), str(), list(), tuptle(), dict()
d1 + int(d3), str(d1) + d3
(4, '13')
- 추가적인 연산, 형변환
d5, d6 = [1, 2], ['A', 'B', 'C']
d5 + d6, d6 * 2
([1, 2, 'A', 'B', 'C'], ['A', 'B', 'C', 'A', 'B', 'C'])
d5, d6 = [1, 2], list('ABC') <- list는 안에 있는 문자를 따로따로 list를 만들어주는 기능을 한다.
print(d5 + d6, d6 * 2, d4 * 5)
[1, 2, 'A', 'B', 'C'] ['A', 'B', 'C', 'A', 'B', 'C'] 44444
▶ 할당연산자 : 누적해서 산술연산을 수행
▶ 비교연산자 : ==, !=, >, <, >=, <=
- 데이터 + 데이터 = 논리값
- 수식의 문법이 틀리면 False, 맞으면 True 출력
# ATM 기기 코드로 구현
# 인출이 가능하면 True, 불가능하면 False 출력
# 인출금액을 입력받아서 처리 : input()
balance = 10000
draw = int(input('insert draw amount : '))
balance >= draw
insert draw amount :
▶ 논리연산자 : 논리값 + 논리값 = 논리값
* 비교연산자 : 조건 1개, 논리연산자 : 조건 2개 이상
- not, and(T : T and T = T), or(F : F or F = F)
- 우선순위 not > and > or
- and 는 두 개의 조건이 모두 True여야 True
- or 는 두 개의 조건 중 하나만 True여도 True
not False, not (True and False), False or True, (10 > 5) or (10 > 15)
(True, True, True, True)
▶ 멤버연산자 : 컬렉션 데이터에서 특정데이터가 있는지 확인 : 결과 논리값
- in, not in
data = list('ABC')
'B' in data, 'D' in data, 'D' not in data
(True, False, True)
▶ 실수할만한 코드
# 부동소수점 연산 문제 : 소수점을 이진수로 연산하다가 생기는 문제
data1, data2 = 0.1, 0.2
(data1 + data2) == 0.3
False
해결방법
1. 반올림으로 해결 : round()
round(number[, ndigits]) : number 를 소수점 다음에 ndigits 정밀도로 반올림한 값을 돌려줍니다.
ndigits 가 생략되거나 None 이면, 입력에 가장 가까운 정수를 돌려줍니다.
print(round(data1 + data2, 1))
round(data1 + data2, 1) == 0.3
0.3
True
2. 고정 소수점 연산
from decimal import Decimal
print(float(Decimal(str(data1))+ Decimal(str(data2))))
float(Decimal(str(data1)) + Decimal(str(data2))) == 0.3
0.3
True
출처 - 멋쟁이사자처럼_AISCHOOL_박우진강사님
'TIL' 카테고리의 다른 글
[TIL] 7일차_python_operator_condition_loop_03 (0) | 2023.02.28 |
---|---|
[TIL] 7일차_ python_operator_condition_loop _02 (0) | 2023.02.28 |
[TIL] 6일차_질문답변상자 만들기 (1) | 2023.02.28 |
[TIL] 6일차_PYTHON_02 (0) | 2023.02.28 |
[TIL] 6일차_PYTHON_01 (0) | 2023.02.28 |
Comments