Python에서 문자열을 바이너리로 변환

Azaz Farooq 2023년1월30일
  1. format()함수를 사용하여 Python에서 문자열을 이진 표현으로 변환
  2. bytearray메소드를 사용하여 Python에서 문자열을 이진 표현으로 변환
  3. map()함수를 사용하여 Python에서 문자열을 이진 표현으로 변환
  4. ASCII메소드를 사용하여 Python에서 문자열을 이진 표현으로 변환
Python에서 문자열을 바이너리로 변환

문자열이 이진으로 변환되면 원래 문자를 나타내는 이진 값 목록이 생성됩니다. 각 문자는 반복되고 바이너리로 변환되어야합니다.

이 기사에서는 파이썬에서 문자열을 바이너리 표현으로 변환하는 몇 가지 방법에 대해 설명합니다.

format()함수를 사용하여 Python에서 문자열을 이진 표현으로 변환

문자열의 유니 코드 포인트를 해당 정수로 변환하는ord()함수를 사용합니다. format()함수는b이진 형식을 사용하여 정수를 2 진법의 숫자로 변환합니다.

전체 예제 코드는 다음과 같습니다.

string = "Python"
binary_converted = " ".join(format(ord(c), "b") for c in string)
print("The Binary Representation is:", binary_converted)

출력:

The Binary Represntation is: 1010000 1111001 1110100 1101000 1101111 1101110

bytearray메소드를 사용하여 Python에서 문자열을 이진 표현으로 변환

바이트 배열은 이진 데이터 목록을 저장할 수있는 바이트 집합입니다. 문자열을 명시 적으로 반복하는 대신 바이트 시퀀스를 반복 할 수 있습니다. ord()함수를 사용하지 않고bytearray()함수를 사용하여 수행 할 수 있습니다.

전체 예제 코드는 다음과 같습니다.

string = "Python"
binary_converted = " ".join(format(c, "b") for c in bytearray(string, "utf-8"))
print("The Binary Represntation is:", binary_converted)

출력:

The Binary Representation is: 1010000 1111001 1110100 1101000 1101111 1101110

map()함수를 사용하여 Python에서 문자열을 이진 표현으로 변환

format()함수 대신map()함수를 사용할 수도 있습니다. map()bytearray()함수를 사용하여 문자열을 바이트 배열로 변환 한 다음bin을 사용하여 이진 표현의 바이트 배열을 변환합니다.

전체 예제 코드는 다음과 같습니다.

string = "Python"
binary_converted = " ".join(map(bin, bytearray(string, "utf-8")))
print("The Binary Represntation is:", binary_converted)

Python 3에서는utf-8과 같은 인코딩 체계를 정의해야합니다. 그렇지 않으면 오류가 발생합니다.

출력:

The Binary Represntation is: 0b1010000 0b1111001 0b1110100 0b1101000 0b1101111 0b1101110

ASCII메소드를 사용하여 Python에서 문자열을 이진 표현으로 변환

Python 3에서utf-8이 기본 인코딩 체계입니다. 그러나이 방법은utf-8대신ASCII인코딩 체계를 사용합니다. 기본 영숫자 문자열의 경우UTF-8ASCII인코딩 간의 차이가 눈에 띄지 않습니다. 그러나ASCII문자 컬렉션의 일부가 아닌 문자를 포함하는 텍스트를 처리하는 경우 중요해집니다.

전체 예제 코드는 다음과 같습니다.

st = "Python"
a_bytes = bytes(st, "ascii")
binary_converted = " ".join(["{0:b}".format(x) for x in a_bytes])
print("The Binary Represntation is:", binary_converted)

출력:

The Binary Representation is: 1010000 1111001 1110100 1101000 1101111 1101110

관련 문장 - Python String

관련 문장 - Python Binary