-
파이썬으로 버전 비교Python/이것저것 파이썬 2022. 10. 6. 13:02반응형
버전을 비교하려면, 어떻게 하는 것이 깔끔할까요?
'1.9.1' > '1.10' # True
버전은 숫자와 점으로 구성된 문자열입니다.이런 코드가 떠오릅니다만..
import doctest def to_int_tuple(a: str) -> tuple[int]: return tuple(int(each) for each in a.split('.')) def compare(a: str, b: str) -> str: """ >>> compare('1.19', '1.10.1') '>' >>> compare('1.1', '1.10.1') '<' >>> compare('1.9', '1.10.1') '<' >>> compare('1.10.2', '1.10.1') '>' """ a_tuple, b_tuple = to_int_tuple(a), to_int_tuple(b) if a_tuple == b_tuple: return '==' elif a_tuple < b_tuple: return '<' else: return '>' doctest.testmod() # print(compare('1.9', '1.10.1'))
다음을 참고해도 좋을 것 같습니다.
packaging.version.parse
SemVer
반응형