Python을 사용하여 16진수 디코딩 및 인코딩

PHPz
풀어 주다: 2023-08-19 14:09:22
앞으로
2628명이 탐색했습니다.

Python을 사용하여 16진수 디코딩 및 인코딩

이 글에서는 Python을 사용하여 16진수를 디코딩하고 인코딩하는 방법을 알아봅니다.

사용방법

  • binascii 모듈 사용

  • base64 모듈 사용

방법 1: Binascii 모듈 사용

binascii 모듈에는 바이너리와 다른 ASCII로 인코딩된 바이너리 표현 간에 변환하는 여러 가지 방법이 있습니다.

16진수 원시 문자열을 인코딩하거나 디코딩해야 하는 경우 binascii 모듈을 사용할 수 있습니다.

알고리즘(단계)

다음은 필요한 작업을 수행하는 알고리즘/단계입니다. −

  • import 키워드를 사용하여 binascii 모듈을 가져오세요.

  • 입력 바이트 문자열을 저장할 변수를 만듭니다.

  • binascii 모듈의 b2a_hex() 함수를 사용하여 입력 바이트 문자열을 16진수로 인코딩합니다.

  • 입력 바이트 문자열의 결과 16진수를 인쇄합니다.

  • 위의 16진수를 바이트 문자열로 디코딩하려면 binascii 모듈의 a2b_hex() 함수를 사용하세요.

Example

의 중국어 번역은 다음과 같습니다:

Example

다음 프로그램은 b2a_hex() 및 a2b_hex() 함수를 사용하여 입력 바이트 문자열을 16진수로 인코딩하고 다시 바이트 문자열로 디코딩합니다.

으아악

출력

위 프로그램을 실행하면 다음과 같은 출력이 생성됩니다 -

으아악

방법 2: base64 모듈 사용

base64 모듈에도 비슷한 기능이 있습니다. 또한 원시 16진수를 인코딩하거나 디코딩할 수도 있습니다.

알고리즘(단계)

다음은 필요한 작업을 수행하는 알고리즘/단계입니다. −

  • import 키워드를 사용하여 base64 모듈을 가져오세요.

  • 입력 바이트 문자열을 저장할 변수를 만듭니다.

  • base64 모듈의 b16encode() 함수를 사용하여 입력 바이트 문자열을 16진수(16진수)로 인코딩합니다.

  • 입력 바이트 문자열의 결과 16진수를 인쇄합니다.

  • base64 모듈의 b16decode() 함수를 사용하여 위의 16진수를 바이트 문자열로 디코딩하여 인쇄합니다.

Example

의 중국어 번역은 다음과 같습니다:

Example

다음 프로그램은 b16encode() 및 b16decode() 함수를 사용하여 입력 바이트 문자열을 16진수로 인코딩하고 다시 바이트 문자열로 디코딩합니다. -

으아악

출력

위 프로그램을 실행하면 다음과 같은 출력이 생성됩니다 -

으아악

설명된 기능을 사용하면 대부분의 경우 16진수로 변환하는 것이 간단합니다. 케이스 접기는 두 방법의 가장 큰 차이점입니다. binascii의 작업과 비교하여 base64.b16decode()base64.b16encode() 함수는 대문자 16진수 문자만 처리할 수 있습니다.

인코딩 함수의 출력은 항상 바이트 문자열이라는 점을 기억하는 것도 중요합니다. 출력을 유니코드로 강제 실행하려면 추가 디코딩 단계를 포함해야 할 수도 있습니다.

Example

의 중국어 번역은 다음과 같습니다:

Example

다음 프로그램은 디코드 기능을 사용하여 16진수를 ASCII 형식으로 디코딩합니다.

으아악

출력

위 프로그램을 실행하면 다음과 같은 출력이 생성됩니다 -

으아악

b16decode() 및 a2b_hex() 메서드는 16진수를 디코딩할 때 바이트 또는 유니코드 텍스트를 입력으로 허용합니다. 그러나 이러한 문자열에는 ASCII로 인코딩된 16진수 숫자만 포함될 수 있습니다.

결론

이 기사에서는 Python을 사용하여 숫자의 16진수 표현을 디코딩하고 인코딩하는 방법을 배웠습니다. 또한 16진수 숫자의 ASCII 표현을 디코딩하기 위해 decode() 메서드를 사용하는 방법도 배웠습니다.

위 내용은 Python을 사용하여 16진수 디코딩 및 인코딩의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿