romanToInteger

来源:互联网 发布:额温枪算法 编辑:程序博客网 时间:2024/06/11 16:35

这个是我自己编写的将罗马数字变成阿拉伯数字的python的代码,接下来有根据答案进行更改

a = input()a = list(a)length = len(a)sum = 0b = []for data in a:    if data == 'M':        b.append(1000)    elif data == 'D':        b.append(500)    elif data == 'C':        b.append(100)    elif data == 'L':        b.append(50)    elif data ==        b.append(10)    elif data == 'V':        b.append(5)    else:        b.append(1)i = 1sum = b[-1]while(i < length):    if b[-i] <= b[-(i + 1)]:        sum = b[-(i+1)] + sum        i = i + 1    else:        sum = sum - b[-(i + 1)]        i = i + 1print(sum)
接下来是加入了字典之后对其进行更改

a = input()length = len(a)sum = 0b = {'M':1000, 'D':500, 'C':100, 'L':50, 'X':10, 'V':5, 'I':1}i = 1sum = b[a[-1]]while(i < length):    if b[a[-i]] <= b[a[-(i + 1)]]:        sum = b[a[-(i+1)]] + sum        i = i + 1    else:        sum = sum - b[a[-(i + 1)]]        i = i + 1print(sum)

0 0
原创粉丝点击