美文网首页
Python3 实现罗马数字转换

Python3 实现罗马数字转换

作者: 愛新覚羅勛 | 来源:发表于2018-09-19 15:44 被阅读0次

Python3 实现罗马数字转换

def Roman_numerals(num):
    # 字典中配置好每个字符对应的数字
    Roman_s = {'I': 1,'V': 5,'X': 10,'L': 50,'C': 100,'D': 500,'M': 1000}   
    s = 0
    
    # 循环n-1次,确定每个数字前的符号,并计算和
    for i in range(len(num)-1):             
        if Roman_s[num[i]]<Roman_s[num[i+1]]:
            s -= Roman_s[num[i]]
        else:
            s += Roman_s[num[i]]
    # 加上最后一个数字
    s += Roman_s[num[-1]]               

    return s

print(Roman_numerals("I"))
print(Roman_numerals("IV"))

结果
1
4

备注:文中没有考虑‘’0‘’的写法
没有考虑在一个数的上面画一条横线的情况
没有考虑错误写法等

相关文章

网友评论

      本文标题:Python3 实现罗马数字转换

      本文链接:https://www.haomeiwen.com/subject/kauinftx.html