新聞中心
這篇文章主要為大家詳細介紹了如何在Python3.5中將羅馬數(shù)字轉換成整數(shù),文中示例代碼介紹的非常詳細,具有一定的參考價值,發(fā)現(xiàn)的小伙伴們可以參考一下:
Python主要用來做什么
Python主要應用于:1、Web開發(fā);2、數(shù)據(jù)科學研究;3、網絡爬蟲;4、嵌入式應用開發(fā);5、游戲開發(fā);6、桌面應用開發(fā)。
問題概述:
給定一個羅馬數(shù)字 ,將羅馬數(shù)字轉換成整數(shù)。
如羅馬數(shù)字I,II,III,IV,V分別代表數(shù)字 1, 2, 3, 4, 51,2,3,4,5。
首先要來了解一下羅馬數(shù)字表示法,基本字符有 7 個:I、V、X、L、C、D、M,分別表示 1、5、10、50、100、500、1000。
在構成數(shù)字的時候,有下列規(guī)則:
1、相同的數(shù)字連寫,所表示的數(shù)等于這些數(shù)字相加得到的數(shù),如:III = 3;
2、小的數(shù)字在大的數(shù)字的右邊,所表示的數(shù)等于這些數(shù)字相加得到的數(shù), 如:VIII = 8;XII = 12;
3、小的數(shù)字,(限于Ⅰ、X和C)在大的數(shù)字的左邊,所表示的數(shù)等于大數(shù)減小數(shù)得到的數(shù),如:IV = 4;IX = 9;
4、正常使用時,連寫的數(shù)字重復不得超過三次。
輸入格式
輸入一個羅馬數(shù)字字符串,其對應的數(shù)字為 s (1≤s≤3999)。
輸出格式
輸出對應的整數(shù) s。
以下是詳細代碼:
# -*- coding:utf-8 -*- #! python3 chart = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000} strs = input() result = 0 omit = -1 # omit為需省略的字符位 if strs in chart: print(chart[strs]) else: for i in range(len(strs)): # 遍歷字符串的每一位:(0,len-1) if i == omit: # 如果無需省略i pass elif i <= len(strs)-2: # 如果還沒有遍歷到最后一位:(len-1-1) if chart[strs[i]] < chart[strs[i+1]]: # 如果前一位對應值小于后一位的 result += chart[strs[i+1]] - chart[strs[i]] # 進行減操作 omit = i+1 # 省略下一位字符 else: result += chart[strs[i]] else: # 遍歷到最后一位 result += chart[strs[i]] print(result)
測試運行結果:
以上就是創(chuàng)新互聯(lián)成都網站設計公司小編為大家收集整理的如何在Python3.5中將羅馬數(shù)字轉換成整數(shù),如何覺得創(chuàng)新互聯(lián)成都網站設計公司網站的內容還不錯,歡迎將創(chuàng)新互聯(lián)成都網站設計公司網站推薦給身邊好友。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、網站設計器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
新聞名稱:如何在Python3.5中將羅馬數(shù)字轉換成整數(shù)-創(chuàng)新互聯(lián)
網站地址:http://www.ef60e0e.cn/article/gcjss.html