파이썬
이진법 변환 방법
1️⃣ bin() 함수 사용
- bin() 함수는 숫자를 2진법 문자열로 변환하여 반환
n = 5
binary_str = bin(n) # 결과: '0b101'
2️⃣ format() 함수 사용
- format() 함수의 'b' 포맷 코드를 사용하여 2진법 문자열을 얻을 수 있다.
n = 5
binary_str = format(n, 'b') # 결과: '101'
3️⃣ f-string을 사용한 포맷팅
- f-string 안에서도 :b를 붙여서 2진법으로 출력할 수 있다.
n = 5
binary_str = f"{n:b}" # 결과: '101'
4️⃣ bin() 함수 + 슬라이싱
- bin() 함수의 결과에서 접두사 '0b'를 제거하기 위해 슬라이싱을 사용할 수 있다.
n = 5
binary_str = bin(n)[2:] # 결과: '101'
5️⃣ 수동으로 나머지와 몫 계산
- 반복문을 이용해 나머지와 몫을 계산하면서 수동으로 2진법 문자열을 만들 수 있다.
def to_binary(n):
binary_str = ''
while n > 0:
binary_str = str(n % 2) + binary_str
n //= 2
return binary_str
print(to_binary(5)) # 결과: '101'
이들 중 bin()과 format()은 가장 간편하고 자주 쓰이는 방법이다.
remove() 사용 시 주의사항
- s = "110010101001" -> s.remove("0") 사용 불가
- AttributeError: 'str' object has no attribute 'remove'
- answer.remove('0') -> 중복된 요소가 있어도 하나만 제거됨
📜 작성한 게시글
[Programmers 코딩테스트 L2. 이진 변환 반복하기] 👉 https://dev-cloud.tistory.com/391
'TIL' 카테고리의 다른 글
[TIL] 2024년 11월 11일 (1) | 2024.11.12 |
---|---|
[TIL] 2024년 11월 10일 (0) | 2024.11.11 |
[TIL] 2024년 11월 08일 (2) | 2024.11.09 |
[TIL] 2024년 11월 07일 (0) | 2024.11.07 |
[TIL] 2024년 11월 06일 (0) | 2024.11.06 |