반응형
내장 함수 사용
binary - 이진수, decimal - 십진수
# 이진수 -> 십진수
binary = bin(decimal)
# 십진수 -> 이진수
binary = int('decimal', 2)[2:] # '0b' 접두사를 제거하고 이진수 문자열만 반환
내장 함수 미 사용
# 십진수 -> 이진수
def decimal_to_binary(num):
res = ""
while num > 0:
res = str(num % 2) + res # 나머지를 앞에 추가
num = num // 2 # 2로 나눔
return res if res else "0" # 숫자가 0일 경우 "0" 반환
# 이진수 -> 십진수
def binary_to_decimal(binary_str):
res = 0
length = len(binary_str)
for i in range(length):
if binary_str[length - 1 - i] == "1": # 뒤에서부터 계산
res += 2 ** i
return res
반응형
'Python > 알고리즘 - 내장함수, 라이브러리 등등' 카테고리의 다른 글
문자열 대소문자 변경 (0) | 2024.11.24 |
---|---|
[heap] 파이썬으로 힙 구현을 위한 heapq 라이브러리 (0) | 2024.11.23 |
반응형
내장 함수 사용
binary - 이진수, decimal - 십진수
# 이진수 -> 십진수
binary = bin(decimal)
# 십진수 -> 이진수
binary = int('decimal', 2)[2:] # '0b' 접두사를 제거하고 이진수 문자열만 반환
내장 함수 미 사용
# 십진수 -> 이진수
def decimal_to_binary(num):
res = ""
while num > 0:
res = str(num % 2) + res # 나머지를 앞에 추가
num = num // 2 # 2로 나눔
return res if res else "0" # 숫자가 0일 경우 "0" 반환
# 이진수 -> 십진수
def binary_to_decimal(binary_str):
res = 0
length = len(binary_str)
for i in range(length):
if binary_str[length - 1 - i] == "1": # 뒤에서부터 계산
res += 2 ** i
return res
반응형
'Python > 알고리즘 - 내장함수, 라이브러리 등등' 카테고리의 다른 글
문자열 대소문자 변경 (0) | 2024.11.24 |
---|---|
[heap] 파이썬으로 힙 구현을 위한 heapq 라이브러리 (0) | 2024.11.23 |