[PYTHON] 숫자를 고정 길이로 이진으로 변환
PYTHON숫자를 고정 길이로 이진으로 변환
1에서 127 사이의 임의의 숫자가 있다고 가정 해 봅시다. 숫자를 이진수로 변경하고 해당 코드에서 0b를 제거합니다.
key_one= int(raw_input("Enter key (0 <= key <= 127): "))
if key_one in range(128):
bin_key_one=bin(key_one)[2:]
print bin_key_one
else:
print "You have to enter key (0 <= key <= 127)"
이제 필자는 필요에 따라 0으로 시작 부분을 패딩하여 7 자 길이로 만들고 싶습니다. 나는 for 루프를 사용해야한다고 생각하지만, 누군가 그것을 어떻게 할 수 있는지 보여 줄 수 있습니까?
해결법
-
==============================
1.아니야.
아니야.
>>> '{0:07b}'.format(12) '0001100'
-
==============================
2.그래서 파이썬에는 문자열 메소드 인 .zfill ()이 있습니다.
그래서 파이썬에는 문자열 메소드 인 .zfill ()이 있습니다.
>>> '1'.zfill(7) '0000001' >>> '10010'.zfill(7) '0010010'
-
==============================
3.파이썬 3.6의 새로운 f-strings를 사용하면 다음을 할 수 있습니다.
파이썬 3.6의 새로운 f-strings를 사용하면 다음을 할 수 있습니다.
key_one = int(input("Enter key (0 <= key <= 127): ")) if key_one in range(128): bin_key_one = f'{key_one:07b}' print(bin_key_one) else: print("You have to enter key (0 <= key <= 127)")
-
==============================
4.이 시도:
이 시도:
for i in range(1, 127): '0'*(7-len(bin(i)[2:]))+bin(i)[2:]
from https://stackoverflow.com/questions/3252528/converting-a-number-to-binary-with-a-fixed-length by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 파이썬에서 길이 인코딩 실행 (0) | 2018.11.25 |
---|---|
[PYTHON] 장고 관리자의 종속 인라인의 유효성 검사 (0) | 2018.11.25 |
[PYTHON] 파이썬 3.2 람다 구문 오류 [중복] (0) | 2018.11.25 |
[PYTHON] HTTPError : HTTP 오류 403 : 금지됨 (0) | 2018.11.25 |
[PYTHON] TypeError 'x'객체에 '__getitem__'속성이 없습니다. (0) | 2018.11.25 |