* 파이썬의 연산자의 종류와 연산자의 우선순위를 이용하여 연산을 실행
* 시퀀스에 대한 구문을 살펴보고 활용
□ 복습
Test 변수 | Test() 함수 | A Test.Test( ) 메서드
class = 속성(값) + 메서드(메시지:속성 값 또는 넘겨받은 값을 가지고 기능을 수행한다)
ex) 100 → 정수를 관리하는 class로 값을 전달
: <class 'int'> = 100 + 메서드(2진, 8진, 16진, 문자열 변환 등)
ex) 파이썬은 자료형(class)에 종류에 따라 다양한 기능을 가진 클래스들과 모듈을 만들어서
사용자가 값을 전달하게 되면 자동으로 맵핑(클래스를 호출해서 기능 전달) 하는 기능을 제공한다.
파이썬 a=100 / 다른 언어 int a = 100; Integer a =new Integer(100)으로 호출해야 함
a= int 클래스의 인스턴스임
a= 100 → a에 100에 해당하는 int 클래스가 맵핑되고 객체가 생성되어 주소가 a에 대입된다.
※ 생성자('__init__')의 반대말은 소멸자 ('__del__')이다.
프로그래밍 언어
개념 → 설치 → 자료형(변수, 상수, 리터럴) → 연산자 → 제어문 → 함수
▷ C → 포인터 → 포인터 배열 → 함수 포인터 → 구조체 → 파일 입/출력 →전처리기
▷ java → 클래스, 상속, 다형성 → 스레드, 예외 → 파일 입/출력 → 컬렉션 → 네트워크
▷ python → 클래스, 상속, 다형성 → 스레드, 예외 → 파일 입/ 출력 → 모듈 → 확장형 모듈
연산자 (operator)
대상을 두고 계산을 할 때 사용하는 문자
계산이 이루어지는 대상을 피연산자라고 말한다.
연산자와 피연산자는 주어진 식을 계산하고 결과를 리턴한다.
※ 산술, 비교, 논리, 비트, 시프트, 대입 연산자
1. 산술 연산자 ( + , * , - , / , % , ** , // )
% : c = a % b → a에 있는 값에서 b에 있는 값을 나눈 다음 나머지를 c에 대입한다.
** : c = a ** b → a를 b만큼 거듭제곱한 결과를 c에 대입한다.
// : c = a // b → 몫을 가져오고 소수점 이하는 버린다.
2. 비교_관계 연산자
두 개의 값을 비교해서 그 결과(True, False)를 리턴하는 연산자
>, <, >=, <=, == ,!=(같지 않다) (<>)
3. 논리 연산자
and, or, not을 이용해서 각 논리 값들 사이에 사용하는 연산자로 결과(True, False)를 리턴하는 연산자
0=False, 1=True
and : 두 값이 모두 참일 때 결괏값이 True (그리고)
or : 두 값이 모두 거짓일 때 결괏값이 True (또는)
not : 값의 반대 값
a^b XOR(exclusif) : 크로스로 있을 때 True
( 3 > 5 ) & ( 3 > 2 ) = False & True = False
두 개의 연산이 있을 경우 and 연산은 첫 연산의 결과가 False 이면 연산 수행하지 않고 False 리턴
두 개의 연산이 있을 경우 or 연산은 첫 연산의 결과가 True 이면 연산수행 하지 않고 True 리턴
4. 비트 연산자
Bitwise and, Bitwise or, Bitwise not, BitwiseXOR, Bitwise right shift, Bitwise left shift을 이용해서
각 비트 값들 사이에 사용하는 연산자로 결과(bit)를 리턴하는 연산자
0=False, 1=True
~, &, | , ^, >>, << (shift연산자)
음향, 영상, 이미지, 문자열 → 수치화 → 비트 → 벡터 (행열)
→ [특징량(실제 데이터/테스트 데이터)] → 분석 모델링
※ 결손치 (연산 X, 중복 데이터)
ex) bin(10), bin(4)으로 확인 가능
10 & 4
10 | 4
~10
10 >> 2
10 << 2
5. 대입 연산자
대입 연산자는 변수에 값을 저장하기 위한 용도로
오른쪽 수식을 계산한 값을 왼쪽에 있는 변수에 대입하는 연산자 (연산자 = )
+= 숫자 덧셈 후 대입
-= 숫자 뺄셈 후 대입
*= 숫자 곱셈 후 대입
/= 숫자 나눗셈 후 대입
**= 숫자 제곱 후 대입
//=
<<=
,,,,
x=5
x=x+5 → x += 5
x=x-5 → x -= 5
6. 기타 연산자 (dict, str, list, tuple 등)
시퀀스(sequence)에서 값을 찾을 수 있는지의 유/무를 테스트 할 때 사용
is : 비교하는 객체의 주소가 같은지 유/무를 True/False로 리턴
is not : 비교하는 객체의 주소가 다른지 유/무를 True/False로 리턴
in (or와 같음) : 연속 항목에서 지정된 값이 존재하는지 유/무
not in : 연속 항목에서 지정된 값이 존재하지 않는지 유/무
시퀀스 (sequence)
파이썬에서 문자열, 수치 등을 관리하는 기본 자료형 (dict, str, list, tuple 등)
1. 배열 형식
문자열, 수치 등 을 나열해서 관리하는 배열 형식을 취한다.
2. 인덱싱(indexing)
배열로 저장된 형식을 취하기 때문에 색인을 자료의 위치를 참조해서 값을 리턴 받고 활용할 수 있다.
3. 슬라이싱(slicing)
특정 구간의 자료를 리턴할 수 있는 기능
4. 연결, 반복 : + , *
5. 기타 연산자를 통해서 시퀀스 자료의 유/무 체크
문자열_string (str)
1. 문자열의 인덱싱
문자열은 각 한 문장씩의 인덱스를 가지고 0부터 나열한 값을 가지게 된다.
역순은 -(음수) 값을 가진 인덱스로 매핑된다.
호출은 문자 변수[인덱스]로 호출하면 값을 리턴한다.
문자열의 시작 주소가 mystring에 대입되어 참조 관계가 된다.
mystring은 str의 인스턴스가 된다.
공백은 코드값이 32
※ 문자열은 string pool 영역에 할당되어 관리된다.
2. 슬라이싱(slicing)
[인덱스 시작 : 인덱스 끝 : 스텝]으로 명시해서 범위에 맞는 값을 잘라서 리턴하며 단계를 지정한다.
Mystr [0:2] : 인덱스 0 이상 2 미만 슬라이싱
Mystr [3:] : 인덱스 3 이상부터 마지막까지 슬라이싱
Mystr [:7] : 처음부터 인덱스 7 미만까지 슬라이싱
Mystr [0:-6] : 처음부터 끝에서 6번 미만까지 슬라이싱
Mystr [-6:] : 끝에서 6번부터 끝까지 슬라이싱
3. 연결, 반복 : +, *
4. 기타 연산자
문자열의 기타 연산자도 사용하고 기능을 찾아서 사용할 때는
str 클래스의 멤버인 메서드를 찾아서 변환 작업을 한 후 리턴한다.
단, 처음 초기값으로 설정된 값은 인덱싱으로 변경할 수 없다.
튜플_( , , ,)
빈 튜플( ), 혼합형 튜플(, , ,) , 중첩.(nested) ( , (), []) 의 형식으로 값 변경이 불가능하다.
1. 인덱싱
문자열은 각 한 문장씩을 인덱스를 가지고 0부터 나열한 값을 가지게 된다.
역순으로 - (음수) 값을 가진 인덱스로 매핑된다.
호출은 문자 변수[인덱스]로 호출하면 값을 리턴한다.
2. 슬라이싱(slicing)
[인덱스 시작 : 인덱스 끝: 스텝]으로 명시해서 범위에 맞는 값을 잘라서 리턴하며 단계를 지정한다.
3. 연결, 반복 : +, *
4. 기타 연산자
문자열의 기타 연산자도 사용하고 기능을 찾아서 사용할 때는 str 클래스의 멤버인 메서드를
찾아서 변환 작업을 한 후 리턴한다.
단, 처음 초기값으로 설정된 값은 인덱싱으로 변경할 수 없다.
list_[ , , , ]
빈[ ] , 혼합형 [, , ,] , 중첩.(nested) [ , ( ), [ ] ]의 형식으로 값 변경 가능하다.
1. 인덱싱
문자열은 각 한 문장씩의 인덱스를 가지고 0부터 나열한 값을 가지게 된다.
역순은 -(음수) 값을 가진 인덱스로 매핑된다.
호출은 문자 변수[인덱스]로 호출하면 값을 리턴한다.
2. 슬라이싱(slicing)
[인덱스 시작 : 인덱스 끝: 스텝]으로 명시해서 범위에 맞는 값을 잘라서 리턴하며 단계를 지정한다.
3. 연결, 반복 : +, *
4. 기타 연산자
문자열의 기타 연산자도 사용하고 기능을 찾아서 사용할 때는
str 클래스의 멤버인 메서드를 찾아서 변환 작업을 한 후 리턴한다.
처음 초기값으로 설정된 값은 인덱싱으로 변경할 수 없다.
'|Playdata_study > Python' 카테고리의 다른 글
210422_PVM (0) | 2021.04.22 |
---|---|
210422_제어문1 (조건문, 반복문, 흐름제어문) (0) | 2021.04.22 |
210421_시퀀스 자료형 및 표준 입,출력 (0) | 2021.04.21 |
210419_Python 2 (0) | 2021.04.19 |
210416_Python 1 (0) | 2021.04.18 |
댓글