比较版本号

给定两个版本号,比较一下两个的大小
其实考虑的方面挺多的,以下程序不保证完全准确

#-*- coding:utf-8 -*-
import re

def compareVersion(v1, v2):
    if not v1 or not v2:
        return 
    if not isinstance(v1, str) or not isinstance(v2, str):
        return '请输入字符串'
    v1_list = v1.split('.')
    v2_list = v2.split('.')
    if len(v1_list) != 3 or len(v2_list) != 3:
        return '请输入正确的版本号'
    flag = False
    for i in range(3):
         if re.match('[0-9][a-z]', v1_list[i]) and re.match('[0-9][a-z]', v2_list[i]):
            flag = True
    if not flag:
        return '版本号格式错误'
    for i in range(3):
        if v1_list[i] == v2_list[i]:
            continue
        if v1_list[i] > v2_list[i]:
            return v1
        elif v1_list[i] < v2_list[i]:
            return v2
    print('两个版本号相等')
    return v1

if __name__ == '__main__':
    print '234'
    v1 = 'a1.2.3a'
    v2 = '1.2.3a'
    print(compareVersion(v1, v2))

你可能感兴趣的:(比较版本号)