@HRBP 版本比较函数
def versionCompare(v1,v2): def str_to_int(para:str) -> str: # 转换函数,用于将纯字符型数字在不借由内置函数、第三方库的情况下处理为纯数字类型。 number_convert_extract = {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9} number_value = 0 for temp_number in para: number_value = number_value * 10 + number_convert_extract[temp_number] - number_convert_extract['0'] return number_value def numob(parameter:str) -> str: # 任意包含中文、英文、数字、标点符号的参数预处理函数,结果形成可用的字符串型数字 usable_str = '' try: for temp_str in parameter: if temp_str >= '0' and temp_str <= '9': usable_str += temp_str except TypeError: return parameter return str_to_int(usable_str) def init(parameterNo1:str,parameterNo2:str) -> str: # 对象A、B存储比较数值 exampleA = numob(parameterNo1) exampleB = numob(parameterNo2) print(exampleA if exampleA > exampleB else exampleB) init(v1,v2) versionCompare('上期版本.1.23', 'Version.4.7.1') versionCompare('S^aa5.0A1','OOPOOAVVV1.1006')