본문 바로가기

프로그래밍/Python

Python 한 걸음 내딛기 : Part 1 [데이터타입]

~위한 파이썬.. 이라는 Title을 가져보려고 하는데.. 잘 될지 모르겠네요.

타이틀을 어찌할지도.. ^^;

오늘부터... 가능하면 이 주제에 대해서도 1주일에 하나씩은 하려고 합니다.

기존에 1회성(?) 스터디 때 사용한 자료가 있어서.. 이번 주까지는 1번 더 올릴 수 있을 듯 싶고..

다음 주부터는.. 공부하고 만들어야 할 듯요.. ^^;

자꾸 더디게 움직이는 듯하여... 스스로를 채찍질하기 위한.. 일종의 프로젝트성. ^^;


 

 

 Indentation

Python에서 Code Block(Scope)을 구분하는 방법

동일한 Code Block 내에서는 동일한 방법(Space, Tab)으로 구분해야 함.

         가독성을 좋게 하기 위해 전체적으로 동일한 방법으로 작성

하위 레벨의 Code Block이 나오기 바로 전에는 ‘ : ’ (콜론)을 사용.

Indent를 지키지 않으면 오류 발생

 

 

 

 

변수

 

별도의 변수 Type이 존재하지 않는다

변수명으로 문자 / 숫자 / ‘_’ 사용가능하며 대소문자를 구분

지정한 값에 따라서 알맞은 변수 Type으로 인식을 하게 된다.

객체 단위로 지정이 되며, 별도의 초기화 없이 바로 사용이 가능하다.

동일 객체인지 id(변수명) 명령을 사용하여 확인할 수 있다. id는 일종의 메모리 참조 값이다.

 

수치형 자료

숫자를 나타내는 자료형

int, long, float, complex 등이 있다

        ※ Python 3.0에서는 long형은 없어지고 int형으로 처리

선언 시에, 사용자가 입력한 값에 따라서 적정한 수치형  Type으로 선언된다

 

 문자열

 

 문자열은 기본적으로 " " 혹은 ' ' 로 묶어주게 된다.

러 줄의 문자열은 ''' (홑따음표) 3개를 앞 뒤로 묶어준다.   

  일반 " " 로 구성된 문자열 내부에 ', ''을 표기하기 위해서는 \를 붙여서 쓴다.  이를 escaping 이라고 부른다.

 문자열 내부에는 다른 변수의 값을 포함하여 출력할 수 있는 데,  변수가 포함될 위치에 %s를 붙인다

    이후, print 시에 %를 쓰고 뒤에 해당 %s에 들어갈 변수명을 입력한다. 이를 Placeholder라고 한다.

    만약 2개 이상의 변수를 포함하고 싶으면, 출력 시 % 뒤에 변수명을 기입할 때 ( )로 묶어준다.

 문자열을 반복하여 입력하거나 출력할 수 있는 데, 단순히 반복할 문자열 뒤에 *와 반복될 수를

     입력하면 된다. 마치 문자열을 필요한 만큼 곱해서 사용하는 것과 같다.

 

 리스트

다수의 객체를 하나의 객체로 관리하는 것.

대괄호 [ ]로 묶어주고, 대괄호 내에서는 ',' 로 각 객체를 구분하게 된다.

대괄호 안의 항목들은 각각의 index position을 가지게 되고, index0부터 시작한다.

index를 사용하여서 필요한 항목을 사용할 수 있으며, 다른 항목으로 변경도 가능하다.

대괄호 안의 index 사용 시에 ':'을 사용하면, index의 구간을 지정할 수도 있다.

     (ex : My_list[3:7]    - My_list3Index부터 6Index까지의 항목을 지정:마지막 전까지 포함)

 

 

 

리스트에 항목을 추가하려고 할 때에는 append / insert / extend 함수를 사용할 수 있다

리스트의 항목을 삭제 시에는 del List_Variable[Index] 으로 삭제가 가능하다.

두 개의 List의 항목을 합치기 위해서는 List 객체를 + 연산을 이용해서 그냥 더해주면 된다.

     마찬가지로 동일한 내용의 List를 반복하려면 * 연산자를 사용하면 된다.

 

 

 세트

 리스트와 유사하게 다른 객체들의 집합으로 이루어진다.

{ }로 묶어서 정의
교집합과 합집합을 구하는 별도의 메서드가 제공된다.

       교집합 : union  /   합집합 : intersection

차집합 / 합집합 / 교집합을 구하는 연산자가 제공된다.

       교집합 : &  /   합집합 : |  /  차집합 : -

 

 튜플

다수의 객체를 하나의 객체로 관리하는 것은 리스트와 동일하지만

   리스트는 초기 생성 후에 수정이 가능하지만, 튜플을 수정을 할 수 없다.

읽기 전용으로 사용되기 때문에 제공하는 메서드가 적지만 속도가 빠르다.  

괄호 ( )로 묶어주고, 괄호 안에서 ','로 각 객체를 구분하게 된다.

 

 

 

 Dictionary /사전 /

다수의 객체를 하나의 객체로 관리하는 것은 리스트와 동일하지만,

   다수의 객체를 하나의 객체로 관리하는 점에서 리스트나 튜플과 동일하지만,

    각 객체의 값에는 특정한 keyMapping되어 있다.

중괄호 { }로 묶어주고, 중괄호 내에서는 ','로 각 객체를 구분하며,

    하나의 객체는 ':'keyValueMapping 시킨다.     [ key : Value ]

    (ex : Mobile_Phone = { 'Samsung' : 'Galaxy' , 'Apple' : 'I-Phone', 'LG' : 'Cyon' }

dict(key={ ,key=} ) 으로 선언할 수도 있다.

맵에 있는 객체를 'key'를 이용해서 가져오거나, 수정하거나, 삭제할 수 있다.

      그러나 List 처럼 + / * 를 통한 연산은 불가능 하다.

 

 

 

 

연산자

In

리스트, 세트, 튜플에서 사용되며, 해당 자료형 내부에 특정한 값이 존재하는지 확인하여 True/FalseReturn.