Python2023-实验5

本文展示了使用Python的numpy库进行二维矩阵的操作,包括初始化一个边界值为1、其余值为3的矩阵,查找矩阵中最接近给定值的数,修改矩阵元素,以及执行矩阵乘法运算。示例代码详细解释了每个操作的实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二维矩阵创建

二维矩阵创建。

输入格式:

创建一个二维矩阵,其中边界值为 1,其余值为 3。

输出格式:

输出二维矩阵。

输入样例:

在这里给出一组输入。例如:

 

输出样例:

在这里给出相应的输出。例如:

[[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 3. 3. 3. 3. 3. 3. 3. 3. 1.]
 [1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]]
import numpy as np
arr = np.ones((10,10))
arr[1:-1,1:-1] = 3
print(arr)

元素查找

找出数组中与给定值最接近的数。

输入格式:

给定二维矩阵[[0,1,2,3],[4,5,6,7]],找出其中与5.3最接近的数值。

输出格式:

输出最接近数5。

输入样例:

在这里给出一组输入。例如:

 

输出样例:

在这里给出相应的输出。例如:

num = 5
import numpy as np
Z=np.array([[0,1,2,3],[4,5,6,7]])
x=5.3
a=abs(Z-x)
b=a.min()
c=int(abs(x-b))
print("num = {}".format(c),end="")

元素修改

元素修改。

输入格式:

在数组[1, 2, 3, 4, 5]中每相邻两个数字中间插入两个 0。

输出格式:

输出插值后数组[1 0 0 2 0 0 3 0 0 4 0 0 5]。

输入样例:

在这里给出一组输入。例如:

 

输出样例:

在这里给出相应的输出。例如:

[1 0 0 2 0 0 3 0 0 4 0 0 5]
import numpy as np
a=np.array([1,2,3,4,5])
x=2
b=np.zeros(len(a)+(len(a)-1)*x)
b[::x+1]=a
c=np.array(b,dtype=int)
print(c)

矩阵乘法运算

矩阵乘法运算,两个矩阵(x, y)如果可以进行乘法运算,需要满足以下条件:x为 m×n 阶矩阵,y为 n×p 阶矩阵,则相乘的结果 result 为 m×p 阶矩阵

输入格式:

分行输入两个二维矩阵,如果输入矩阵不满足运算条件,则提示“输入格式有错误!”

输出格式:

输入矩阵进行乘法运算,输出结果矩阵。

输入样例:

在这里给出一组输入。例如:

[[1,2,3],[4,5,6]]
[[7,8],[9,10],[11,12]]

输出样例:

在这里给出相应的输出。例如:

[[ 58  64]
 [139 154]]
import numpy as np
x=eval(input())
y=eval(input())
a= np.array(x)
b= np.array(y)
if (a.ndim==2 and b.ndim==2) or (a.ndim==1 and b.ndim==1):
    result= np.dot(a, b)
    print(result)
else:
    print("输入格式有错误!")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值