[파이썬3.0]데이터 형 – 바이트

프로그램 언어/파이썬|2014. 4. 26. 22:20

바이트

문자열은 유니코드로 구성되어있고, 바이트는 0~255사이 코드의 열이다.

A = '1234' 은 문자열

A = b'1234'는 바이트 상수(b로 시작하면 된다.)

문자열에서 사용하는 연산을 거의 제공.

  • 인덱싱/슬라이싱
  • In
  • Upper()
  • Split()
  • Startswith()
  • Endswith()

 

그럼 문자열과 차이는???

바이트는 1바이트로 표현되는 문자만 표현이 가능하다.(영어,몇 개의 특수문자)

그래서 바이트와 문자열간의 연산은 지원되지 않는다.

 

Decode()

바이트를 문자열로 변환하기 위해 사용하는 함수.

>>> b =b'abcd'

>>> b

b'abcd'

>>> b.decode()        #기본 인코딩값은 UTF-8

'abcd'

>>> b.decode('euc-kr')    #인코딩 지정

'abcd'

 

Endcode()

반대로 바이트 -> 문자열 로 변환하는 함수

>>> s

' WorldHello'

>>> s.encode()

b' WorldHello'

 

bytearray()

바이트를 변경이 가능한 상태로 하려면 bytearray형으로 선언하면 된다.

>>> bb = bytearray(b)

>>> bb

bytearray(b'abcd')

>>> bb[2] = ord('C')    #문자열을 변경해준다.

>>> bb

bytearray(b'abCd')

>>> bytes(bb)        #바이트로 반환

b'abCd'

>>> bb.decode()        #문자열 반환

'abCd'



참고 : 파이썬3 바이블

댓글()