Ich habe eine Liste, die ich auf gebrauchten regex die Räume in Strings in der Liste zu entfernen, die perfekt funktioniert -Was ist der Unterschied in zwei Listen?
newrooms = re.sub(r'\s+', " ", str(newrooms))
die ursprüngliche Liste sieht aus wie -
[['4 11-12pm', 'MR252 (30)'], ['5 10.30-12pm', 'MR252 (30)'], ['8 10-11am', 'MR252 (30)'], ['9 11-12pm', 'MR252 (30)'], ['10 10-11am', 'MR252 (30)'], ['10 11-12pm', 'MR251 (22)'], ['12 10-11am', 'MR107 (63)'], ['12 11-12pm', 'MR252 (30)'], ['17 10-11am', 'MR252 (30)'], ['18 11-12pm', 'MR252 (30)'], ['19 10-11am', 'MR252 (30)'], ['19 11-12pm', 'MR265 (24)'], ['20 10-11am', 'CB203 (26)'], ['20 11-12pm', 'MR252 (30)'], ['27 10-11am', 'MR252 (30)'], ['28 11-12pm', 'MR252 (30)'], ['29 10-11am', 'MR252 (30)'], ['42 11-12pm', 'MR252 (30)'], ['42 2-4pm MA ONLY', 'MR252 (30)'], ['43 10-11am', 'MR252 (30)'], ['44 10-11am', ''], ['44 11-12pm', 'MR252 (30)']]
Druck newrooms [3] druckt ... "[ '9 11-12pm', 'MR252 (30)']"
nach dem re.sub mit den Räumen der Liste sieht wie
[['4 11-12pm', 'MR252 (30)'], ['5 10.30-12pm', 'MR252 (30)'], ['8 10-11am', 'MR252 (30)'], ['9 11-12pm', 'MR252 (30)'], ['10 10-11am', 'MR252 (30)'], ['10 11-12pm', 'MR251 (22)'], ['12 10-11am', 'MR107 (63)'], ['12 11-12pm', 'MR252 (30)'], ['17 10-11am', 'MR252 (30)'], ['18 11-12pm', 'MR252 (30)'], ['19 10-11am', 'MR252 (30)'], ['19 11-12pm', 'MR265 (24)'], ['20 10-11am', 'CB203 (26)'], ['20 11-12pm', 'MR252 (30)'], ['27 10-11am', 'MR252 (30)'], ['28 11-12pm', 'MR252 (30)'], ['29 10-11am', 'MR252 (30)'], ['42 11-12pm', 'MR252 (30)'], ['42 2-4pm MA ONLY', 'MR252 (30)'], ['43 10-11am', 'MR252 (30)'], ['44 10-11am', ''], ['44 11-12pm', 'MR252 (30)']]
entfernen
seine genau das gleiche (minus die Räume), aber = jetzt
Druck newrooms [3] druckt ... "4"
die alle hier Code
print newrooms[3]
print newrooms
newrooms = re.sub(r'\s+', " ", str(newrooms))
print newrooms[3]
print newrooms
= Warum das tut Liste jetzt nicht wie eine Liste handeln?
OK Jungs, ich sehe, ich war die ganze Liste in einen String mit str (newrooms) Umwandeln, was i ..
print newrooms[3]
print newrooms
for obj in newrooms:
obj[0] = re.sub(r'\s+', " ", (obj[0]))
print newrooms[3]
print newrooms
Wenn Sie auf diese Art von Situationen stoßen, verwenden Sie "type", um zu sehen, ob sich etwas ändert. Wenn Sie Ihre Regex anwenden, wird die Liste stattdessen eine Zeichenfolge. – Deusdeorum
... weil es ** keine Liste ist? ** – jonrsharpe
@Hugo genauer gesagt, wenn das OP 'str (newrooms) anwendet 'wird es eine Zeichenkette ... –