📜  Python – K 矩阵初始化

📅  最后修改于: 2022-05-13 01:54:49.581000             🧑  作者: Mango

Python – K 矩阵初始化

有时在竞争性编程世界中,我们需要初始化矩阵,但我们不希望使用循环以更长的方式进行。我们需要一个简写。这类问题在动态规划领域很常见。让我们讨论一些可以做到这一点的方法。

方法#1:使用列表推导
列表推导可以被视为执行此特定操作的简写。在列表推导中,我们可以使用 K 初始化内部列表,然后使用列表推导再次将此逻辑扩展到每一行。

# 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))
输出 :
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]]

方法#2:使用列表理解+“*”运算符
这个问题也可以使用 *运算符来简化,它可以稍微减少完成任务的繁琐方式,并且可以简单地使用乘法运算符将初始化扩展到所有 N 行。

# 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))
输出 :
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]]