xiehongzhe 发表于 2024-11-9 15:34:43

python作业题第23讲最后一题,想问问哪里出问题了

matrix = [,
          ,
          ]
m1 = 1025
m2 = 0
for i in range(3):
    for j in range(3):
      mini = matrix
      if mini <= m1:
            m1 = mini
            d1 = i
            d2 = j
    for k in range(3):
      maxi = matrix
      if m2 <= maxi:
            m2 = maxi
            d3 = k
    if d1 == d3:
      print(matrix)

FishC 发表于 2024-11-9 15:43:37

在 Python 代码中,您提到的最后一题有几个需要注意的地方,我们一起来看看:

1. **matrix 的初始化**:您给了一个空的 `matrix`。应确保 `matrix` 是一个 3x3 的二维列表,例如:

   matrix = [
       ,
       ,
      
   ]

   确保 `matrix` 中有数据,这样才能进行后续的处理。

2. **使用未定义的变量**:在代码中直接使用了`mini`,这很可能是要与 `matrix` 做比较或其他操作。

3. **什么意思?可能是比较或寻找最大最小值**:从代码来看,您可能想要找最小值或最大值,但代码不完整,具体逻辑不明确。

如果目的是找到 `matrix` 中的最大和最小值,可以这样做:

matrix = [
    ,
    ,
   
]

m1 = float('inf')# 最小值初始化为无限大
m2 = float('-inf') # 最大值初始化为无限小

for i in range(3):
    for j in range(3):
      value = matrix
      
      if value < m1:
            m1 = value
      
      if value > m2:
            m2 = value

print(f"最小值: {m1}")
print(f"最大值: {m2}")

请根据您的具体需求调整代码,同时确保语法和逻辑正确。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

jackz007 发表于 2024-11-9 16:07:20

本帖最后由 jackz007 于 2024-11-9 17:46 编辑

matrix = [,
          ,
          ]

# 下面按行分别找出本行的最小元素在第几列
for i in range(3):
    d = 0
    for j in range(1 , 3) :
      if matrix < matrix :
            d = j
# 第 i 行的最小元素在第 d 列,也就是 matrix
# 下面找出第 d 列的最大元素在第几行
    c = 0
    for j in range(1 , 3) :
      if matrix > matrix :
            c = j
# 第 d 列的最大元素在第 c 行,也就是 matrix
# 如果 c == i 那么,matrix 和 matrix 就是同一个元素
    if c == i :
      print(i , ',' , d)

      运行实况:
D:\\Python>python x.py
2 , 0

D:\\Python>
页: [1]
查看完整版本: python作业题第23讲最后一题,想问问哪里出问题了