Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python으로 10진수를 2진수 리스트로 변환하는 방법

Python은 다재다능한 언어로서 데이터 처리 과정에서 발생하는 다양한 요구 사항을 손쉽게 처리할 수 있습니다. 그중 하나가 10진수를 2진수로 변환하는 작업인데, 이번 글에서는 10진수를 2진수 리스트 형태로 변환하는 여러 가지 방법을 소개합니다.

format 함수 활용하기

포맷 문자열에 특정 서식 지정자를 사용하면 숫자를 원하는 진수(10진수, 16진수, 8진수, 2진수) 형식으로 표현할 수 있습니다. 아래 예제에서는 {0:0b} 포맷터를 사용하여 정수를 2진수 문자열로 변환한 뒤, 각 자릿수를 정수형 요소로 담은 리스트를 만듭니다.

예제 코드

Dnum = 11

print("주어진 10진수 : " + str(Dnum))

# 10진수를 2진수로 변환
binnum = [int(i) for i in list('{0:0b}'.format(Dnum))]

# 결과 출력
print("변환된 2진수 리스트 : ", binnum)

실행 결과

위 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

주어진 10진수 : 11
변환된 2진수 리스트 : [1, 0, 1, 1]

bin() 내장 함수 활용하기

Python의 내장 함수인 bin()도 같은 목적으로 사용할 수 있습니다. 이 함수는 정수를 2진수 문자열로 변환하며, 결과 앞에 0b 접두사가 붙습니다. 따라서 슬라이싱([2:])을 통해 처음 두 문자를 제거한 후 각 자릿수를 리스트로 변환하면 됩니다.

예제 코드

Dnum = 11

print("주어진 10진수 : " + str(Dnum))

# 10진수를 2진수로 변환
binnum = [int(i) for i in bin(Dnum)[2:]]

# 결과 출력
print("변환된 2진수 리스트 : ", binnum)

실행 결과

위 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

주어진 10진수 : 11
변환된 2진수 리스트 : [1, 0, 1, 1]

마무리

이처럼 Python에서는 format() 함수와 bin() 내장 함수 두 가지 방법으로 10진수를 2진수 리스트로 간단하게 변환할 수 있습니다. 상황에 맞는 방법을 선택하여 활용해 보시기 바랍니다.