如何遍历字典以匹配键值和字符串值



我试图在python中解决罗马数字leetcode。这是我的代码

我尝试了多种方法将字典与键值进行比较,然后将字符串的每个字符与字典进行比较,但不知道如何将其放入代码中。

class Solution(object):
def romanToInt(self, s):
"""
:type s: str
:rtype: int
"""
LETTERS = {"I": 1,"V":5,"X":10,"L":50,"C":100,"D":500,"M":1000}
total = 0
for key in LETTERS:
if key == s[1:]:
total += LETTERS[key]
return total

您不希望遍历键,而是遍历要转换的字符串。首先将循环更改为如下内容:

for symbol in s:
total += LETTERS[symbol]

然而,在这种方法中,罗马数字如IV为4和IX为9存在问题。

最新更新