Por ejemplo, la lista L = [0,1,2,3]
decir y quiero añadir 10 elementos de 4:¿Cómo agrego, digamos, n entradas de x a una lista en una sola toma?
L=[0,1,2,3,4,4,4,4,4,4,4,4,4,4]
sin necesidad de utilizar un bucle o nada
Por ejemplo, la lista L = [0,1,2,3]
decir y quiero añadir 10 elementos de 4:¿Cómo agrego, digamos, n entradas de x a una lista en una sola toma?
L=[0,1,2,3,4,4,4,4,4,4,4,4,4,4]
sin necesidad de utilizar un bucle o nada
Esto es bastante sencillo gracias al hecho de que pueda añadir y/o multiplicar listas:
L += [4] * 10
Aquí está la prueba:
>>> L = [0,1,2,3]
>>> L += [4] * 10
>>> L
[0, 1, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4]
L.extend([4] * 10)
L.extend([some_mutable_object for x in range(10)])
La segunda línea no funciona para 'some_mutable_object', solo para' some_expression_that_returns_or_creates_a_mutable_object() '. De lo contrario, solo obtendrá 10 referencias al mismo objeto. – Ben
Perdón por la conversación revisionista. Accidentalmente publiqué ese comentario antes de hacerlo, así que volví y lo terminé, pero para entonces ya habías respondido a la versión inicial. – Ben
@ user1123950, si va a usar este código para algo más que solo ints o floats (por ejemplo, listas, dicts o sus propias clases), hay algo ** muy importante ** que debe saber: ' * 'el operador creará una lista del ** mismo objeto ** repetido n veces, por lo que si hace' L + = [MyClass()] * 10' todos esos elementos harían referencia al mismo objeto, por lo que si modifica uno de ellos, los estarás modificando a todos. – juliomalegria
@ julio.alegria: estoy totalmente de acuerdo con eso, buen punto. – Tadeck