Вы можете проанализировать его, не изменяя строку, указав формат для datetime.strptime()
соответственно:
In [1]: from datetime import datetime
In [2]: s = "2018,12,12,11,10,38.971"
In [3]: datetime.strptime(s, "%Y,%m,%d,%H,%M,%S.%f")
Out[3]: datetime.datetime(2018, 12, 12, 11, 10, 38, 971000)
Если вы вводите список, вы можете "str.join"элементы в списке, а затем используйте .strptime()
:
In [10]: l = ['2018', '12', '12', '11', '10', '38.971']
In [11]: s = ",".join(l)
In [12]: datetime.strptime(s, "%Y,%m,%d,%H,%M,%S.%f")
Out[12]: datetime.datetime(2018, 12, 12, 11, 10, 38, 971000)