Во-первых, словарь определяется как {}
, а список - как []
Вы определяете словарь, а не список.
Во-вторых, это то, что вам нужно
[1 if (idx==0 or idx == (desired_length-1)) else 0 for idx in range(desired_length)]
то, что вы делаете, устанавливает 1 в начале и в конце, но 1,2,3 и так далее в промежутке между
В-третьих, у вас есть условие, установленное для установки 0 в начале и в конце, а не 1.