2017-12-07 3 views
0

ich das Datumsformat in list2 verwenden möchten diese zur Liste 1Ersetzen eines char, die in der Zeichenfolge mit einer anderen char

list1 = ['1628 04 19 21:10:32', '1752 06 15 20:05:36', '1775 04 18 09:15:56', '1865 04 14 14:54:36', '1876 05 10 15:36:27', '1879 10 22 03:45:15', '2010 09 29 04:46:28'] 

list2 = ['1628 4 19 21:10:32', '1752 6 15 20:05:36', '1775 4 18 09:15:56', '1865 4 14 14:54:36', '1876 5 10 15:36:27', '1879 10 22 03:45:15', '2010 9 29 04:46:28'] 

Ersetzen Sie einfach die Null in einzelne Zahl Monate mit Platz

Antwort

1

Versuchen:

>>> import re 
>>> list1 = ['1628 04 19 21:10:32', '1752 06 15 20:05:36', '1775 04 18 09:15:56', '1865 04 14 14:54:36', '1876 05 10 15:36:27', '1879 10 22 03:45:15', '2010 09 29 04:46:28'] 
>>> [re.sub(r'(\d{4})0',r'\1 ',x) for x in list1] 
['1628 4 19 21:10:32', '1752 6 15 20:05:36', '1775 4 18 09:15:56', '1865 4 14 14:54:36', '1876 5 10 15:36:27', '1879 10 22 03:45:15', '2010 9 29 04:46:28'] 
+0

Sie schlugen mich darauf! –

0

Eine andere Lösung ist wie folgt:

list1 = ['1628 04 19 21:10:32', '1752 06 15 20:05:36', '1775 04 18 09:15:56', '1865 04 14 14:54:36', '1876 05 10 15:36:27', '1879 10 22 03:45:15', '2010 09 29 04:46:28'] 
list2 = [] 

for each_item in list1: 
    if each_item[5] == '0': 
     each_item = each_item[0:5] + ' ' + each_item[6:] 
    list2.append(each_item) 

print list2 

Ausgabe:

['1628 4 19 21:10:32', '1752 6 15 20:05:36', '1775 4 18 09:15:56', '1865 4 14 14:54:36', '1876 5 10 15:36:27', '1879 10 22 03:45:15', '2010 9 29 04:46:28'] 
Verwandte Themen