python - 矩阵类定义

标签 python

我需要一些帮助,尤其是 b)。谢谢

为矩阵定义一个类如下: (a) 提供一个 __init__ 的实现,它将列表的列表作为输入 并返回一个新的矩阵类型对象。

对于矩阵 A =

1 2
3 4

用户可以输入 A = matrix( [[1,2],[3,4]])

(b) 提供 __repr__ 的实现,它返回矩阵的字符串表示,在单独的行中打印每一行,例如打印A 作为:

1, 2
3, 4

最佳答案

对于 a),这实际上取决于您要如何存储矩阵。按原样将矩阵存储为列表的列表可能适合大多数用途,但我不知道的用途到底是什么。矩阵具有列表列表所缺乏的约束(所有行具有相同数量的相同类型的项目);这将由这个类(class)来确保这些限制是正确的。也就是说,如果这是整个作业,只需按原样使用列表列表就可以了。

因此,您可能希望对输入进行一些双重检查。 len()方法会派上用场。

这是你的构造函数需要能够处理的,最终使用异常:

  • 矩阵([])
  • Matrix("Hi")
  • 矩阵([1])
  • 矩阵([1], [2])
  • 矩阵([1], [2, 3])
  • 矩阵([1,2], [3, 4])
  • 矩阵([1.0, 2.0], [3.0, 4.0])
  • 矩阵([1.0 + 2j, 3.0 - 4j], [5.0 + 6.0j, 7.0 + 8.0j])
  • a = [];一 = [一个, 一个];矩阵(a)

对于 b),好吧,您需要做的就是在每一行元素之间放置一个 ", " 并在每一行之间放置一个 "\n"If only there was an easy way to do that...

关于python - 矩阵类定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5391401/

相关文章:

python - Pandas 无法在转置 DataFrame 上使用 Apply

python - 如何使用 Python 的 __import__ 函数完成相当于 "import * from module"的操作?

python - Pandas 数据框的列表列表

python - 带有最初隐藏/静音的图例组的 Bokeh 图

Python TfidfVectorizer : Is conditional re-initialization possible?

python - 为什么下面的Python代码是错误的?

Python - 从具有多个类别的 csv 文件制作字典

python - 如何使用 beautifulsoup 从 url 中的表返回多个页面的数据

c++ - 使用 SWIG 在 Python 中访问 C++ typedef

python - "print"重定向到另一个应用程序时不起作用