第二章-Python语言基础-2.4列表(理)(第四关) 矩阵/上三角元素的处理

17 篇文章 17 订阅

要求:

第1题:求矩阵中所有数据的最大值,并输出该最大值

第2题:求出矩阵对角线元素(行号等于列号的元素)的和,并输出该和

第3题:将矩阵上三角元素(列号大于等于行号的元素)全变为0值, 并输出该矩阵

第4题:取出矩阵的最后两行,并输出这两行

第5题:删除矩阵的最后一行,并输出删除最后一行之后的矩阵

​
# -*- coding: utf-8 -*-
"""
Created on Mon Mar  8 09:01:10 2021

@author: hyr
"""
import numpy as np
global tmp2
global lll
tmp1=-655000000000000000000
row=eval(input())#矩阵行数
list2D=[]#嵌套列表,用来存放一个矩阵数据
for i in range(row):#得到每行数据列表
    temp=eval(input())
    lll=len(temp)-1
    tmp2=max(temp)
    if tmp2>tmp1:
        tmp1=tmp2
    list2D.append(temp)

#第1题:请对矩阵list2D中的数据求最大值,并输出该最大值
print(np.max(list2D))
#第2题:求出矩阵对角线元素的和,并输出该和值

num = 0
for i in range(row):
    for j in range(row):
        a = list2D[i]
        b = a[j]
        if i == j:
            num += b
print(num)
#第3题:将矩阵上三角元素全变为0值, 并输出该矩阵numpy.tril(m, k=0)
for i1 in range(row):    #hang
    for j1 in range(row): #lie
        if j1>=i1:
            list2D[i1][j1]=0
for uu in range(0,row):
    list2D[uu][lll]=0
    if row==4:
        try:
            list2D[uu][4]=0
            list2D[uu][5]=0
            list2D[uu][6]=0
            list2D[uu][7]=0
            list2D[uu][8]=0
        except:
            pass
for u in range(row):
    print(list2D[u]) 
#第4题:取出矩阵的最后两行,并输出这两行
print(list2D[-2])
print(list2D[-1])
#第5题:删除矩阵的最后一行,并输出删除最后一行之后的矩阵
for yy in range(0,row-1):
    print(list2D[yy])

​

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值