【Python】十進制轉二進制

手算十進制轉二進制,即將十進制數除2取餘,根據這個思想,設計以下算法。

base = [str(x) for x in range(10)] + [ chr(x) for x in range(ord('A'),ord('A')+6)]

def dec2bin(string_num):
    num = int(string_num)
    mid = []
    while True:
        if num == 0: break
        num, rem = divmod(num, 2)
        mid.append(base[rem])
    

    return ''.join([str(x) for x in mid[::-1]])

print(dec2bin('10'))

其中base爲:
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F']

mid爲:
['0', '1', '0', '1']

output:
1010

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章