Когда вы вызываете split
, вы передаете разделитель, который по своей природе удаляется из строки при разделении.
Взять, к примеру, следующее:
s = ",foo"
Когда вы звоните s.split(",")
, вы говорите: «Возьмите все с левой стороны от запятой и поместите это в собственную запись массива, затем возьмите все с правой стороны от запятой и вставьте в следующую запись , игнорируя саму запятую ". Функция видит «все слева от запятой» как ""
, а не как ничего.
Итак, ваша строка соответствует следующей схеме:
1aaa5
1, aa5
1, '', a5
1, '', '', 5
Что объясняет, почему есть две пустые строки, а не просто [1,5]