python實(shí)現(xiàn)進(jìn)制轉(zhuǎn)化的示例代碼
做題思路
(1)掌握十進(jìn)制轉(zhuǎn)化為其他進(jìn)制的方法 (2)分析和解決如何將整數(shù)和小數(shù)分離,以及他們的存儲(chǔ)方式。(3)如何設(shè)計(jì)python函數(shù)去實(shí)現(xiàn)它們 (4)了解輾轉(zhuǎn)相除法和列表如何運(yùn)用
提示:以下是本篇文章正文內(nèi)容,下面案例可供參考
一、運(yùn)用的知識(shí)點(diǎn)
(1)鍵盤輸入函數(shù),列表和類型轉(zhuǎn)化 (2)運(yùn)算符的理解(/ 和 //的區(qū)別) (3) 輾轉(zhuǎn)相除法求余數(shù) (4)棧和隊(duì)列的知識(shí)
二、例題展示
1.題目
代碼如下(示例):
輸入一個(gè)自然數(shù),輸出它的二進(jìn)制、八進(jìn)制、十六進(jìn)制表示形式
2.代碼
代碼如下(示例):
# 自然數(shù) = 十進(jìn)制數(shù)
print("----------------------")
print("------ 0.小數(shù) -------")
print("------ 1.整數(shù) -------")
flag = int(input())
# 初始化a,b的值
a = 0
b = 0.0
x = ""
# 判斷是否為小數(shù)或者整數(shù)
if flag == 0:
x = input("請(qǐng)任意輸入一個(gè)小數(shù):")
# a為整數(shù)部分,b為小數(shù)部分
a = int(float(x))
b = float(x) - a
elif flag == 1:
x = input("請(qǐng)任意輸入一個(gè)整數(shù):")
a = int(x)
else:
print("輸入格式錯(cuò)誤")
"""
三者都是用輾轉(zhuǎn)相除法求解
"""
list_en = ['A','B','C','D','E','F']
list_1 = [] # 收集整數(shù)部分
list_2 = [] # 收集小數(shù)部分
list_3 = [] # 收集整數(shù)部分
list_4 = [] # 收集小數(shù)部分
list_5 = [] # 收集整數(shù)部分
list_6 = [] # 收集小數(shù)部分
# 求二進(jìn)制數(shù)
def fun_two(n,m):
if m == 0.0: #整數(shù)部分
while n != 0:
i = n % 2
list_1.insert(0,i) # 類似于壓棧
n = n // 2
else :
count = 0
while n != 0:
i = n % 2
list_1.insert(0,i) # 類似于壓棧
n = n // 2
while count != 10:
m = m * 2
j = int(m)
m = m - j
list_2.append(j)
count = count + 1
# 求八進(jìn)制數(shù)
def fun_eight(n, m):
if m == 0.0: # 整數(shù)部分
while n != 0:
i = n % 8
list_3.insert(0, i) # 類似于壓棧
n = n // 8
else:
count = 0
while n != 0:
i = n % 8
list_3.insert(0, i) # 類似于壓棧
n = n // 8
while count != 10:
m = m * 8
j = int(m)
m = m - j
list_4.append(j)
count = count + 1
# 求十六進(jìn)制數(shù)
def fun_sixteen(n, m):
if m == 0.0: # 整數(shù)部分
while n != 0:
i = n % 16
list_5.insert(0, i) # 類似于壓棧
n = n // 16
else:
count = 0
while n != 0:
i = n % 16
list_5.insert(0, i) # 類似于壓棧
n = n // 16
while count != 10:
m = m * 16
j = int(m)
m = m - j
list_6.append(j)
count = count + 1
print("yes")
def print_str(list1):
s = ""
for item in list1:
if item == '.':
item = '.'
elif int(item) > 10:
l = item - 10
item = list_en[l]
s = s + str(item)
return s
# 二進(jìn)制求解
fun_two(a,b)
# 八進(jìn)制求解
fun_eight(a,b)
# 十六進(jìn)制求解
fun_sixteen(a,b)
list_1.append('.')
list_1.extend(list_2)
list_3.append('.')
list_3.extend(list_4)
list_5.append('.')
list_5.extend(list_6)
s_two = print_str(list_1)
s_eight = print_str(list_3)
s_sixteen = print_str(list_5)
# 測(cè)試結(jié)果
if __name__ == '__main__':
print(a)
print(b)
print(type(a))
print(type(b))
print(list_1)
print(list_3)
print(list_5)
print("二進(jìn)制值:", end = "")
print(s_two)
print("八進(jìn)制值:", end="")
print(s_eight)
print("十六進(jìn)制值:", end="")
print(s_sixteen)
總結(jié)
結(jié)果展示:




到此這篇關(guān)于python實(shí)現(xiàn)進(jìn)制轉(zhuǎn)化的示例代碼的文章就介紹到這了,更多相關(guān)python 進(jìn)制轉(zhuǎn)化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python中數(shù)字列表轉(zhuǎn)化為數(shù)字字符串的實(shí)例代碼
- Python把圖片轉(zhuǎn)化為pdf代碼實(shí)例
- python 時(shí)間戳與格式化時(shí)間的轉(zhuǎn)化實(shí)現(xiàn)代碼
- python各種語言間時(shí)間的轉(zhuǎn)化實(shí)現(xiàn)代碼
- 手動(dòng)實(shí)現(xiàn)把python項(xiàng)目發(fā)布為exe可執(zhí)行程序過程分享
- python編程-將Python程序轉(zhuǎn)化為可執(zhí)行程序[整理]
- 如何將Python代碼轉(zhuǎn)化為可執(zhí)行的程序
相關(guān)文章
python標(biāo)識(shí)符的用法及注意事項(xiàng)
在本篇文章里小編給大家整理了一篇關(guān)于python標(biāo)識(shí)符的用法及注意事項(xiàng)相關(guān)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2021-09-09
Python實(shí)現(xiàn)批量填補(bǔ)遙感影像的無效值NoData
這篇文章主要為大家介紹了如何基于Python中ArcPy模塊,對(duì)大量柵格遙感影像文件批量進(jìn)行無效值(NoData值)填充的方法,感興趣的小伙伴可以了解一下2023-06-06
Python 提取dict轉(zhuǎn)換為xml/json/table并輸出的實(shí)現(xiàn)代碼
這篇文章主要介紹了Python 提取dict轉(zhuǎn)換為xml/json/table并輸出的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-08-08
利用python實(shí)現(xiàn)凱撒密碼加解密功能
這篇文章主要介紹了利用python實(shí)現(xiàn)凱撒密碼加解密功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
Python標(biāo)準(zhǔn)庫之循環(huán)器(itertools)介紹
這篇文章主要介紹了Python標(biāo)準(zhǔn)庫之循環(huán)器(itertools)介紹,本文講解了無窮循環(huán)器、函數(shù)式工具、組合工具、groupby()、其它工具等內(nèi)容,需要的朋友可以參考下2014-11-11
在前女友婚禮上用python把婚禮現(xiàn)場(chǎng)的WIFI名稱改成了
大家好,我是Lex 喜歡欺負(fù)超人那個(gè)Lex 擅長(zhǎng)領(lǐng)域:python開發(fā),網(wǎng)絡(luò)安全滲透,Windows域控Exchange架構(gòu) 今日重點(diǎn):python暴力拿下WiFi密碼;python拿下路由器管理頁面 代碼干貨滿滿,建議收藏+實(shí)操!有問題及需要,請(qǐng)留言哦2021-08-08
python中opencv實(shí)現(xiàn)圖片文本傾斜校正
圖片有的時(shí)候需要矯正,本文主要介紹了python中opencv實(shí)現(xiàn)圖片文本傾斜校正,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06

