罗马数字转整数 用python写
时间: 2023-12-03 07:03:51 浏览: 153
当然可以,下面是一个简单的 Python 代码示例,用于将罗马数字转换为整数:
```python
def roman_to_integer(s):
# 创建罗马数字对应的整数映射关系
roman_to_int = {
'I': 1,
'V': 5,
'X': 10,
'L': 50,
'C': 100,
'D': 500,
'M': 1000
}
result = 0
prev_value = 0
# 从右往左遍历罗马数字字符串
for c in s[::-1]:
current_value = roman_to_int[c]
# 如果当前值小于前一个值,则减去当前值
if current_value < prev_value:
result -= current_value
# 否则,加上当前值
else:
result += current_value
prev_value = current_value
return result
# 示例用法
roman_numeral = "MCMLIV"
integer_value = roman_to_integer(roman_numeral)
print(f"The integer value of {roman_numeral} is {integer_value}")
```
这段代码定义了一个名为 `roman_to_integer` 的函数,它接受一个罗马数字字符串作为输入,并返回对应的整数值。该函数使用了一个字典 `roman_to_int` 来映射每个罗马数字字符到对应的整数值。然后,通过从右往左遍历罗马数字字符串,并根据当前值与前一个值的大小关系来计算最终的整数值。
在示例中,我们将罗马数字字符串 "MCMLIV" 传递给 `roman_to_integer` 函数,并打印出对应的整数值为 1954。你可以根据自己的需要修改输入的罗马数字字符串进行测试。
阅读全文