바이트 및 바이트 배열 파이썬에서 바이너리 데이터를 조작하는 데 사용됩니다. 이러한 바이트 및 바이트열은 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'