給定兩個版本號,比較一下兩個的大小
其實考慮的方面挺多的唉擂,以下程序不保證完全準(zhǔn)確
#-*- 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))