본문 바로가기
  • 문과생의 백엔드 개발자 성장기
|Playdata_study/Python

210420_시퀀스 자료형 및 연산자

by 케리's 2021. 4. 20.

* 파이썬의 연산자의 종류와 연산자의 우선순위를 이용하여 연산을 실행
* 시퀀스에 대한 구문을 살펴보고 활용

 

□ 복습 

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

뒤의 2자리(10)를 버려라

10 << 2 

뒤의 2자리(10)를 넣어라

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

댓글