轻量级前端框架助力开发者提升项目效率与性能
675
2022-09-22
Python3与线性代数的随笔之初等变换(Python 线性代数)
初等变换(elementary transformation)是三种基本的变换,即交换(switching),相乘(multiplication)和相加(addition)。
以下是关于实现初等变换的Python3代码,不需要用numpy和matlib等第三方模块。可能这不是最好,最简单的,但能实现功能,抛砖引玉。
其中程序已定义了一个二维列表变量matrix,并满足矩阵的条件,如[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
交换:
1 switch_num = input("请输入需要交换的那两行的编号:").split()
2 a, b = int(switch_num[0])-1, int(switch_num[1])-1
3 for num in range(len(matrix[0])):
4 matrix[a][num], matrix[b][num] = matrix[b][num], matrix[a][num]
相乘:
说明一下,第4行我自定义了一个错误。因为规定,做相乘运算时,乘数不可为0,自然除数也不能为0,所以要引发错误来提醒用户。
自定义的错误:
1 class MathError(Exception):
2 def __init__(self, value):
3 self.value = value
4
5 def __str__(self):
6 return self.value
相加:
说明,规定不能对同一行进行加减,若用户输入的两个行编号相同,则引发自定义错误
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~