Cambie varios elementos en una lista a la vez en Python

¿Puedo cambiar varios elementos de una lista a la vez en Python?

Question1: Por ejemplo, mi lista es

lst=[0,0,0,0,0] 

Quiero que el tercer y quinto artículo se convierta en 99. Sé que puedo hacerlo por

 lst[2] = 99 lst[4] = 99 

Sin embargo, ¿hay alguna manera más fácil de hacer esto?

Pregunta 2: en la situación, mi valor objective es [99,98], mi índice es [2,4], por lo que mi resultado sería [0,0,99,0,98]. ¿Hay alguna manera fácil de hacer esto? Gracias.

Podrías hacer esto,

 >>> lst=[0,0,0,0,0] >>> target = [99,98] >>> pos = [2,4] >>> for x,y in zip(pos,target): lst[x] = y >>> lst [0, 0, 99, 0, 98] 

Puede usar la asignación de división siempre que el conjunto de índices a los que está tratando de asignar pueda ser referenciado por una división (es decir, a través de inicio, parada, incremento). Por ejemplo:

 lst=[0,0,0,0,0] lst[2::2] = [99, 98] print s # [0, 0, 99, 0, 98]