Как преобразовать формат даты журнала Git в целое число? - PullRequest
0 голосов
/ 29 апреля 2019

Я хочу сохранить дату из git log, чтобы потом сравнить их, но когда я сохраняю их в массив, он говорит, что они имеют строковый тип, и я не знаю, как преобразовать такой формат (например, commited date: Mon Aug 22 15:43:38 2016 +0200).).

date = commits[i]['Date']  
print("commited date:", date) 
moduleDate.append(date)
upToDateModule = max(moduleDate) #trigger here

Traceback (most recent call last):   File
"/home/savoiui/PycharmProjects/VersionChecker/versionCheckerV4.py",
line 120, in <module>
    main()   File "/home/savoiui/PycharmProjects/VersionChecker/versionCheckerV4.py",
line 110, in main
    upToDateModule = max(moduleDate)
 TypeError: an integer is required (got type str)

Ответы [ 2 ]

0 голосов
/ 29 апреля 2019

Вы можете попробовать преобразовать строку даты в формат даты и времени, прежде чем добавлять их в список moduleDate, например

from datetime import datetime

date = commits[i]['Date']
print("commited date:", date) 
# commited date: Mon Aug 22 15:43:38 2016 +0200

datetime_object = datetime.strptime(' '.join(date.split(' ')[:-1]), '%a %b %d %H:%M:%S %Y') 

moduleDate.append(datetime_object) 
upToDateModule = max(moduleDate)

Надеюсь, это поможет!

0 голосов
/ 29 апреля 2019

Чтобы получить дату и время из строки, вы можете использовать библиотеку datetime с методом strptime().

Примечание: вы использовали // для комментирования?В python вы комментируете с # символом

...