Python – Inicialización de array K

A veces, en el mundo de la programación competitiva, necesitamos inicializar la array, pero no queremos hacerlo de una manera más larga usando un bucle. Necesitamos una abreviatura para esto. Este tipo de problema es bastante común en el dominio de la programación dinámica. Vamos a discutir ciertas formas en que esto se puede hacer.

Método n.º 1: Uso de la comprensión de
listas La comprensión de listas puede tratarse como una forma abreviada de realizar esta operación en particular. En la comprensión de listas, podemos inicializar la lista interna con K y luego extender esta lógica a cada fila nuevamente usando la comprensión de listas.

# Python3 code to demonstrate 
# K Matrix Initialization 
# using list comprehension
  
# Declaring rows
N = 5
  
# Declaring columns
M = 4
  
# initializing K 
K = 7
  
# using list comprehension 
# to initializing matrix
res = [ [ K for i in range(N) ] for j in range(M) ]
  
# printing result 
print("The matrix after initializing with K : " + str(res))
Producción :

The matrix after initializing with K : [[7, 7, 7, 7, 7], [7, 7, 7, 7, 7], [7, 7, 7, 7, 7], [7, 7, 7, 7, 7]]

Método n.º 2: Usar comprensión de lista + operador «*»
Este problema también se puede simplificar usando el operador *, que puede reducir ligeramente la forma tediosa en que se realiza la tarea y puede simplemente usar el operador de multiplicación para extender la inicialización a todas las N filas.

# Python3 code to demonstrate 
# K Matrix Initialization 
# using list comprehension
# and * operator
  
# Declaring rows
N = 5
  
# Declaring columns
M = 4
  
# initializing K
K = 7
  
# using list comprehension 
# to initializing matrix
res = [ [K for i in range(M)] * N]
  
# printing result 
print("The matrix after initializing with K : " + str(res))
Producción :

The matrix after initializing with K : [[7, 7, 7, 7, 7], [7, 7, 7, 7, 7], [7, 7, 7, 7, 7], [7, 7, 7, 7, 7]]

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *