2019년 6월 18일 화요일

#2 자료구조&알고리즘 - PYTHON의 DATA TYPE


#2 PYTHON의 DATA TYPE


파이썬은 OOP(Object-oriented programming)패러다임을 가지고 있다.

따라서 class라는 것을 정의해서 사용할수 있는데
이때 class 는 객체의 상태(속성=property)와 행동(=method)으로 구성된다.

클래스 또한 아날로그적인 ADT로 볼수 있는데 사용자는 data item의 상태와 행동만을 보기 때문이다.

Data item은 우리가 객체(object)라 부르고
객체(object)는 클래스의 인스턴스(instance)라 한다.




Built-in Atomic Data Types


지금부터 atomic data type , 즉 파이썬이 가지고 있는 개별단위(?)의 data type을 살펴보자.


1 . numeric class


        📝 int와 float class의 Operator

                +, - , * , / , ** , (), %, //


2 . bool class


        📝 boolean Operator

               Logical : and, or, not

               Relational  :  <, >, <=, >=, ==, !=



        🔔알고 넘어가야 할것! 


            Python 에서 variable을 생성하여 대입을 해준다고 일반적으로 말을 하는데

            mynum = 1 이라고 하면 mynum이라는 variable이 생성되면서 1이라는 숫자가 되는게 아니라 1이라는 숫자의 주소를 참조하는 것이다.

            즉 1이라는 객체가 int class로 부터 생성이 되고 mynum은 1이라는 객체의 주솟값을 참조한다고 생각을 해주면 되겠다.



Built-in Collection Data Types



1 . List Class - mutable(변경가능)


        data object에 대해 0개 이상의 참조(변수)를 가진 순서가 있는 모음

        list는 순서가 있기 때문에
        Python Sequence의 Operations을 사용할 수 있다. 

        📝 Python Sequence Operator


                indexing - [] , + , * , membership - in, len, [:]

                
     

        🔨 List Methods


                append, insert, pop, sort, reverse, del, index, count, remove




                    🔔주의사항!

                            mylist = [1,2]
                            A = mylist*2     A : [1,2,1,2]
                            mylist[1] = 0     A : [1,0,1,0]

                            변수는 해당 객체의 주솟값을 참고하므로 객체가 변경되면 변경사항이 같이 적용된다.




2 . Strings - immutable(변경 불가능)


        0개 이상의 연속된 글자(순서있음)

        📝 Python Sequence Operator 사용가능


        🔨 String Methods 


            center, count, ljust, lower, rjust, find, split


3 . Tuple - immutable


        list와 비슷하지만 값의 변경이 불가능한 순서있는 연속된 data이다.

        📝 Python Sequence Operator 사용가능



4 . Set - immutable


        0개 이상의 Python data objects로 이루어진 순서가 없는 collection

        중복된 값도 허용하지 않는다

        empty set 은 set()으로 표시한다.

        📝 Set Operator


            membership - in , len, | , &, -, <=(contain)

        🔨 Set Methods


            union, intersection, difference, issubset, add, remove, pop, clear


5 . Dictionary - mutable


        key와 value의 쌍으로 구성된 순서 없는 collection


        📝 Dictionary Operator

    
                Return value or add pair - [], key in dictionary - in, del

        🔨 Dictionary Methods


                keys, values, items, get, get(key, alt) - 미지정시 none
    

댓글 없음:

댓글 쓰기

가장 많이 본 글