小蜂队 发表于 2021-10-29 20:40:41

速查Python课后第23讲创建n*n矩阵列表,寻找矩阵中幸运数字

本帖最后由 小蜂队 于 2021-11-24 17:51 编辑

0.刚开始做时想得复杂了,我就创不出 88 * 88 的二维列表。
# 创建一个 88 * 88 的随机整数矩阵(二维列表),
#然后匹配用户输入的整数是否与其中某元素相等,如果相等则打印行号和列号。

import random
   
# 创建并初始化二维列表
matrix = []#创建一个名字为 matrix 的空列表
for i in range(88):
    matrix.append([])
    for j in range(88):
      matrix.append(random.randint(0, 1024))# 向每个二维列表中加入一个随机数。
   
target = int(input("请输入一个代匹配的整数:"))
   
# 匹配用户输入的整数
for i in range(88):
    for j in range(88):
      if matrix == target:
            print(i, j)
0.1代码执行之一如下:
请输入一个代匹配的整数:456
5 54
7 53
16 30
17 69
26 14
43 8
>>>

1.还有点不是很了解的的代码min_row = * row
max_col = * col
,有哪位学长路过解释下,感激不尽


#寻找矩阵中的幸运数字

matrix = [,
          ,
          ]
   
row = len(matrix)#获取 matrix 的长度
col = len(matrix)#获取 matrix 列表中第一个元素的长度
   
min_row = * row
max_col = * col
   
# 遍历矩阵中的每一个元素
# 找到每行中最小的元素,并将它们存放到列表min_row中
# 找到每列中最大的元素,并将它们存放到列表max_col中
for i in range(row):
    for j in range(col):
      min_row = min(matrix, min_row)
      max_col = max(matrix, max_col)
   
# 遍历矩阵中的每一个元素
# 判断是否同时满足“同一行的所有元素中最小”和“同一列的所有元素中最大”
for i in range(row):
    for j in range(col):
      if matrix == min_row and matrix == max_col:
            print(matrix)

心驰神往 发表于 2021-10-30 16:22:06

{:5_95:}

我叫PCA 发表于 2021-11-7 16:44:13

不错!

tomok 发表于 2021-11-7 17:12:24

{:5_109:}

木子鱼coco 发表于 2022-8-15 22:54:58

{:10_249:}学习

baomifafa 发表于 2023-2-7 15:49:13

min_row = * row
max_col = * col

同没看懂这个存在的含义

西庸 发表于 2023-7-20 17:34:41

baomifafa 发表于 2023-2-7 15:49
min_row = * row
max_col = * col



页: [1]
查看完整版本: 速查Python课后第23讲创建n*n矩阵列表,寻找矩阵中幸运数字