如果version1 > version2 返回1,如果 version1 < version2 返回-1,不然返回0.
输入的version字符串非空,只包含数字和字符.。.字符不代表通常意义上的小数点,只是用来区分数字序列。例如字符串2.5并不代表二点五,只是代表版本是第一级版本号是2,第二级版本号是5.
如果version1 > version2 返回1,如果 version1 < version2 返回-1,不然返回0.
输入的version字符串非空,只包含数字和字符.。.字符不代表通常意义上的小数点,只是用来区分数字序列。例如字符串2.5并不代表二点五,只是代表版本是第一级版本号是2,第二级版本号是5.
两个字符串,用空格分割。
每个字符串为一个version字符串,非空,只包含数字和字符.
只能输出1, -1,或0
0.1 1.1
-1
version1和version2的长度不超过1000,由小数点'.'分隔的每个数字不超过256。
def main(): a = list(input().split(" ")) b, c = [list(map(int,it.split("."))) for it in a] l = abs(len(b) - len(c)) if l and len(b) > len(c): c += [0] * l if l and len(b) < len(c): b += [0] * l for c1, c2 in zip(b, c): if c1 > c2: print(1) return elif c1 < c2: print(-1) return print(0) if __name__ == "__main__": main()
x,y = map(lambda x:list(map(int, x.split('.'))), input().split()) if x > y: print(1) elif x < y: print(-1) else: print(0)
# Python3 代码---完全通过版 def judgeTwoVersion(str0): a, b = str0[0], str0[1] # 将字符串转存为两个列表 list_a, list_b = a.split('.'), b.split('.') # 求最小的长度,考虑到两个字符串可能出现长度不等的情况 mylen = min(len(list_a), len(list_b)) # 等长度判断 for i in range(mylen): if int(list_a[i]) < int(list_b[i]): print('-1') break elif int(list_a[i]) > int(list_b[i]): print('1') break elif int(list_a[i]) == int(list_b[i]): continue # 非等长度判断 if i == mylen - 1 and list_a[mylen - 1] == list_b[mylen - 1]: if len(list_a) > len(list_b): print('1') elif len(list_a) < len(list_b): print('-1') elif len(list_a) == len(list_b): print('0') # 主函数 if __name__ == '__main__': str0 = [i for i in input().split()] # 输入字符串 judgeTwoVersion(str0) # 输出判断结果
需要注意的2个问题: