From 903433d9dd7aca6f8989b917c0d10801d96c4541 Mon Sep 17 00:00:00 2001 From: Axel Kohlmeyer Date: Tue, 9 Feb 2021 14:22:30 -0500 Subject: [PATCH] use datetime module to convert string date to numeric date --- python/lammps/__init__.py | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/python/lammps/__init__.py b/python/lammps/__init__.py index 89ff30ead9..48839273c5 100644 --- a/python/lammps/__init__.py +++ b/python/lammps/__init__.py @@ -15,7 +15,7 @@ from .pylammps import * # convert module string version to numeric version def get_version_number(): - import re + from datetime import datetime from sys import version_info vstring = None if version_info.major == 3 and version_info.minor >= 8: @@ -32,18 +32,7 @@ def get_version_number(): if not vstring: return 0 - vregex = re.compile(r"([0-9]+)([A-Za-z]+)(2[0-9]+)") - m = vregex.match(vstring) - - if (m): - month2num = { 'Jan' : 1, 'Feb' : 2, 'Mar' : 3, 'Apr' : 4, 'May' : 5, 'Jun' : 6, - 'Jul' : 7, 'Aug' : 8, 'Sep' : 9, 'Oct' : 10, 'Nov' : 11, 'Dec' : 12 } - try: - vernum = int(m.group(3))*10000 - vernum += month2num[m.group(2)]*100 - vernum += int(m.group(1)) - except: - exit('Failure to parse version string: %s' % verstr) - return vernum + d = datetime.strptime(vstring, "%d%b%Y") + return d.year*10000 + d.month*100 + d.day __version__ = get_version_number()