这行代码换成for循环是怎么实现的呀

nums=[[0]n for i in range(n)] # 初始化一个nn的零阵

这是一个列表推导式,本身是由for循环语句新建列表推导出来的,如下。


# for循环
n=5
list_nums = list()
for i in range(n):
    list_nums.append(a)
#推导后 >>>
list_nums=[a for i in range(n)]

nums=[[0]n for i in range(n)]
因此按照上面还原则

nums=[]
for i in range(n):
  nums.append([0]*n)

大概就是这样,参考一下


n = 5
nums=[[0] * n for i in range(n)]
print(nums)

nums2 = []
for i in range(n):
    items = []
    for j in range(n):
        items.append(0)
    nums2.append(items)

print(nums2)

直接换成for循环应该是这样的,

n = 5
nums=[]
for i in range(n):
    nums.append([0] * n)
print(nums)

可以和你之前的代码对应 ,"[0] * n"是每次循环里要执行的,"for i in range(n)"是表示要循环执行多少次