나는 이진 내가 그것의 앞에 0000이 숫자를 변환 할 때마다이 인쇄 나던 때문에 내 모든 변환 부분이 긴 미친 듯이이다진수 계산기 도움말 - 파이썬
## The Input part
l = raw_input('Input 8-bit number: ')
j = list(l)
## Value Error part
t = [int(x) for x in j]
if len(t) != 8 or len([n for n in t if n not in (1, 0)]) != 0:
raise ValueError('NOT 1 OR 0, or NOT CORRECT LENGTH')
## The Conversion part
a = l[0]
b = l[1]
c = l[2]
d = l[3]
e = l[4]
f = l[5]
g = l[6]
h = l[7]
p = a+b+c+d
q = e+f+g+h
y = hex(int(p, 2))[2:]
z = hex(int(q, 2))[2:]
## The Results part
print
print 'Results'
print 'Binary: ',l
print 'Hex: ',y+z
16 진수로 변환이 코드가 0과 내가 그것을 인쇄 할 필요가 거기에 긴 과정을하지 않고 이렇게하는 방법입니다
모든 숙제는 숙제로 표시하십시오. – agf
Smartass 응답은'from binascii import hexlify'입니다. 네 숙제를 채점했다면 엄청난 점수가 남을거야. – Kimvais
@Jonathan M의 답변처럼 내장 함수가 있습니다. 그리고'a = l [0], b = l [1]'을 사용하는 것은 좋지 않습니다. 그냥 l [0], l [1]을 사용하거나 for 루프를 사용하십시오. 어쨌든, 'a, b, c, d, e, f, g, h = 1'은 8 개의 과제를 대체 할 수 있습니다. 그리고 다음과 같이 10 행을 대체 할 수 있습니다 :'p = sum (map (int, l [: 4])); q = 합계 (map (int, l [4 :]))'. – utdemir