-
파이썬 2진수/8진수/10진수/16진수 변환하기파이썬 2023. 4. 10. 23:32
2진수 변환
예1)
27을 2진수로 변환하는 코드 : f"{27:b}"
print(f"{27:b}") → 11011
예2)
27을 2진수로 변환하는 코드 : "{:b}".format(27)
print("{:b}".format(27)) → 110118진수 변환
예1)
27을 8진수로 변환하는 코드 : f"{27:o}" ※ o은 소문자
print(f"{27:o}") → 33
예2)
27을 8진수로 변환하는 코드 : "{:o}".format(27) ※ o은 소문자
print("{:o}".format(27)) → 3316진수 변환
예1)
27을 16진수로 변환하는 코드 : f"{27:x} ※ x은 소문자
print(f"{27:x}") → 1b
예2)
27을 16진수로 변환하는 코드 : "{:x}".format(27) ※ x은 소문자
print("{:x}".format(27)) → 1b2, 8, 16진수를 다시 10진수(일반적인 수)로 되돌리기
2진수인 1010을 10진수로 변환 : print(int("1010", 2)) → 10
8진수인 36을 10진수로 변환 : print(int("36", 8)) → 30
16진수인 c를 10진수로 변환 : print(int("c", 16)) → 12예시문제
문제) 1~100 사이에 있는 숫자 중 2진수로 변환했을 때 0이 하나만 포함된 숫자를 찾고, 그 숫자들의 합을 구하는 코드를 만드시오.
출력)
2 : 10
5 : 101
6 : 110
:
95 : 1011111
합계 : 539
파이썬 코딩 1)
a = [ ]
for i in range(1,100+1) :
변환 = f"{i:b}" → 1부터 100까지의 숫자가 2진수로 변환됨
if 변환.count("0") == 1 : → 문자열.count(문자열) 함수 사용
print(i, ":", 변환)
a.append(i)
print("합계:", sum(a))
a = [i for i in range(1,1+100) if f"{i:b}".count("0")==1] → 리스트 내포를 사용함
for i in a :
print("{} : {}".format(i, f"{i:b}"))
print("합계:", sum(a))'파이썬' 카테고리의 다른 글
파이썬 스택(stack)과 힙(heap) 개념 및 예시 (0) 2023.04.17 파이썬 함수/매개변수/인수/가변매개변수 기초예시 (0) 2023.04.13 파이썬 개수 세는 프로그램 구현하기 (0) 2023.04.10 파이썬 join( ) 함수의 활용 (0) 2023.04.06 파이썬으로 최대값/최소값 구하기 (0) 2023.03.31