Python小技巧:罗马数字转阿拉伯数字

简介: Python小技巧:罗马数字转阿拉伯数字

Python实现罗马数字转阿拉伯数字


class Solution(object):
    def romanToInt(self, s):
        """
        :type s: str
        :rtype: int
        """
        s = list(s)
        sum = 0
        convert = {'M': 1000, 'D': 500, 'C': 100, 'L': 50, 'X': 10, 'V': 5, 'I': 1}
        for i in range(len(s)-1):
            while (convert[s[i]] < convert[s[i + 1]]):
                if s[i] == 'I' and s[i + 1] == 'V':
                    sum -= convert[s[i]]
                    break
                elif s[i] == 'I' and s[i + 1] == 'X':
                    sum -= convert[s[i]]
                    break
                elif s[i] == 'X' and s[i + 1] == 'L':
                    sum -= convert[s[i]]
                    break
                elif s[i] == 'X' and s[i + 1] == 'C':
                    sum -= convert[s[i]]
                    break
                elif s[i] == 'C' and s[i + 1] == 'D':
                    sum -= convert[s[i]]
                    break
                elif s[i] == 'C' and s[i + 1] == 'M':
                    sum -= convert[s[i]]
                    break
                else:
                    sum += convert[s[i]]
                    break
            i += 1
        sum += convert[s[-1]]
        return sum
st = 'IVCD'
p = Solution()
print(p.romanToInt(st))

输出:404

相关文章
|
2月前
|
存储 索引 Python
Python小技巧:单下划线 '_' 原创
Python小技巧:单下划线 '_' 原创
|
6月前
|
机器学习/深度学习 C++ Python
Python小技巧:蛇形方阵
Python小技巧:蛇形方阵
|
2月前
|
开发工具 git Python
Python小技巧:满意的逗号放置
Python小技巧:满意的逗号放置
|
2月前
|
开发者 索引 Python
7个提升python编程的小技巧
7个提升python编程的小技巧
37 0
7个提升python编程的小技巧
|
6月前
|
Python
Python小技巧:一种字符串的排序方式
该文介绍了如何对包含数字的字符串列表进行特定排序。首先,示例了一个初始问题,使用Python内置的`sorted()`函数未能达到预期(按数字部分升序排序)。然后,文章提出通过自定义排序键`sort_key`来解决,利用正则表达式提取字符串尾部数字并进行排序。进一步,文章扩展到处理如&#39;nxxx_name_nxxx&#39;格式的字符串,通过给前缀和后缀数字赋予不同权重进行复合排序,展示了如何实现先按前缀、再按后缀排序的功能。提供的代码示例成功地完成了任务。
|
2月前
|
存储 索引 Python
Python小技巧:单下划线 ‘_‘
Python小技巧:单下划线 ‘_‘
|
2月前
|
SQL 关系型数据库 MySQL
Python小技巧——将CSV文件导入到MySQL数据库
Python小技巧——将CSV文件导入到MySQL数据库
47 0
|
3月前
|
索引 Python
干货!20个Python使用小技巧
干货!20个Python使用小技巧
|
4月前
|
Python
Python小技巧:一种字符串的排序方式
Python小技巧:一种字符串的排序方式
34 0
|
5月前
|
Python
Python一些实用小技巧
Python一些实用小技巧
18 0