Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 이진 시퀀스 유형

<시간/>

바이트바이트 배열 파이썬에서 바이너리 데이터를 조작하는 데 사용됩니다. 이러한 바이트 및 바이트열은 memoryview라는 버퍼 프로토콜에서 지원됩니다. . memoryview는 실제 데이터를 복사하지 않고 다른 바이너리 개체의 메모리에 액세스할 수 있습니다.

바이트 리터럴은 이러한 옵션으로 구성할 수 있습니다.

  • b'작은따옴표가 있는 바이트입니다.'

  • b“큰따옴표가 있는 또 다른 바이트 세트”

  • b'''세 개의 작은 따옴표를 사용하는 바이트''' 또는 b"""큰 따옴표 3개를 사용하는 바이트"""

바이트 및 바이트 배열과 관련된 몇 가지 방법은 다음과 같습니다. -

16진법(문자열)

fromhex() 메서드는 바이트 객체를 반환합니다. 각 바이트에 2개의 16진수가 포함된 문자열이 필요합니다. 이 경우 ASCII 공백은 무시됩니다.

16진법()

hex() 메서드는 각 바이트에서 두 개의 16진수를 반환하는 데 사용됩니다.

메서드 교체(byte, new_byte)

replace() 메서드는 바이트를 새 바이트로 교체하는 데 사용됩니다.

메서드 개수(sub[, start[, end]])

이 함수는 부분 문자열의 겹치지 않는 항목을 반환합니다. 시작과 끝 사이에 체크인합니다.

메서드 찾기(sub[, start[, end]])

find() 메서드는 부분 문자열의 첫 번째 항목을 찾을 수 있습니다. 검색에 성공하면 인덱스를 반환하고, 그렇지 않으면 -1을 반환합니다.

메서드 파티션(9월)

Partition 메서드는 구분 기호를 사용하여 문자열을 구분하는 데 사용됩니다. 다른 파티션 목록이 생성됩니다.

메소드 메모리뷰(obj)

memoryview() 메서드는 주어진 인수의 메모리 뷰 객체를 반환하는 데 사용됩니다. 메모리 보기는 Python 버퍼 프로토콜을 표현하는 안전한 방법입니다. 개체의 내부 버퍼에 액세스할 수 있습니다.

예시 코드

hexStr = bytes.fromhex('A2f7 4509')
print(hexStr)
byteString = b'\xa2\xf7E\t'
print(byteString.hex())

bArray1 = b"XYZ"
bArray2 = bArray1.replace(b"X", b"P")
print(bArray2)

byteArray1 = b'ABBACACBBACA'
print(byteArray1.count(b'AC'))

print(byteArray1.find(b'CA'))
bArr = b'Mumbai,Kolkata,Delhi,Hyderabad'
partList = bArr.partition(b',')
print(partList)

myByteArray = bytearray('String', 'UTF-8')
memView = memoryview(myByteArray)

print(memView[2]) #ASCII of 'r'
print(bytes(memView[1:5]))

출력

b'\xa2\xf7E\t'
a2f74509
b'PYZ'
3
4
(b'Mumbai', b',', b'Kolkata,Delhi,Hyderabad')
114
b'trin'