При использовании
* перед итерируемым объектом, таким как список, происходит распаковка элементов списка и их передача как отдельных аргументов. В данном случае функции print()По итогу
[1] будет распаковано в 1, а [2, 3] в 2 и 3. Отсюда и ответ — 1 2 3