메뉴 건너뛰기

XEDITION

Study

[Python]열혈강의 Python Day2

짱가동생 2017.09.07 09:34 조회 수 : 2

콘솔 입출력. 

1. raw_input  : 문자열을 키보드로 부터 읽어 들이는 함수 

2. print : 화면으로 자료 출력. 여러 값을 추력할 경우  ',' 로 구분할 수 있다.  ';' 으로 구분하면 줄바꿈을 한다. 

3. pprint 모듈 : print 문이 복잡한 자료를 추렭할 때 적합하지 않다면 pprint를 사용한다. 

  >>>import pprint

  >>>complicated = [ 'spam', (1, 2, 3), ( 'ham' , 'egg', ( 'ab', 'cd', ( 'abc', 'def' )) ) ]

  >>>complicated = complicated * 3

  >>>pprint.pprint(complicated)

  ################################

4. 대화적 출력 후크(Interactive Display Hook) : 

   repr() 내장함수 , sys.displayhook 설정 후 repr()대신 다른 함수를 기본출력 할수 이있음. 

   >>>import sys, pprint

   >>>sys.displayhook = pprint.pprint

   >>>complicated

   # 하지만 print 문으로 출력하면 여전히 같은 값을 출력됨. 

##############################

 

 

자료형의 종류

  : 수치형(Numbers), 문자열(Strings), 리스트(Lists), 사전(Dictionaries), 튜플(Tuples), 파일(Files)

  문자열 슬라이싱 : (start:Stop:Setp)

  문자열 변경을 원할 경우 s = 'h' + s[1:]

  문자열 길이는 len()내장함수를 사용

  멤버십 테스트를 이용하오 부분 문자열의 존재를 확인 가능함. 

    >>>s = 'Hello World'

    >>>'World' in s

    >>>'World' not in s

    #######################

 

리스트 : [ ] 를 사용, 임의의 객체를 저장하는 집합적 자료형이다. 다양한 메소드를 가지고 있다. 값의 변형이 가능하다. 

 

  >>>L=[1,2,3]  # 세개의 자료를 가지는 리스트

  >>>len(L)  # 데이터 개수

  >>>L[1]  # 두 번째 자료, 옵셋은 0으로 부터 시작

  >>>L[-1]

  >>>L[1:3]  # 슬라이싱

  >>>L+L

  >>>L*3

  >>>L = range(10)

  >>>L[: : 2]  # 확장 슬라이스. 파이썬 2.3 이상

  >>>L[: : -1]

  >>>4 in L   # 멤버십 테스트

  >>>L.append(4)   # 리스트 마지막에 자료 추가

  >>>L

  >>>del 1[0]   # 리스트 자료의 삭제

  >>>L

  >>>L.reverse()    # 리스트 순서를 바꾼다. 리스트는 메쏘드(객체 함수)를 가진다. 

  >>>L

  >>>L.sort()    #리스트를 오름차순으로 정렬한다. 

  >>>L

############################

 

튜플 : ( )를 사용하는 튜플도 문자열과 리스트와 유사한 특성을 가진다. 

        리스트와 다른점은 값의 변경이 안된다. 

        다양한 메소드가 없다. 

 

사전 : 옵센이 아닌 키를 사용하여 값을 얻는 자료 구조. 사전을 리스트라 튜를로 변환하는 것은 가능. 

  >>>d = {'one' : 1, 'two' : 'dul', 'three' : 'set', 'four': 'net' }

  >>>d.key()    #키만 리스트로 추출한다. 

  >>>d.value()    #값만 리스트로 추출한다. 

  >>>d.items()    #키와 값의 튜플을 리스트로 변환한다. 

#######################

 

내장 자료형의 분류 :

  자료 저장방법에 따른 분류 : 직접 자료형(Direct), 시퀀스 형(Sequence), 매핑 형( Mapping )

  변경 가능성에 따른 분류 : 변경 가능 형(Mutable), 변경 불가능 형(Immutable)

  자료 저장 개수에 따른 자료형 : 리터럴 형( Literal/Scalar), 저장 형(Container)

자료형 저장 모델 변경 가능성 접근 방법
수치 형 리터럴 불가 직접
문자열 리터럴 불가 시퀀스
리스트 저장 가능 시퀀스
튜플 저장 불가 시퀀스
사전 저장 가능 매핑

 

 

위로