Python - 字符串到矩阵表示

时间:2015-08-07 12:38:10

标签: python string matrix

  1. 我有一个字符串a="1 2 3; 4 5 6"。我如何在Python中将其表示为矩阵[1 2 3; 4 5 6]
  2. 我想再使用另一个字符串b,转换为矩阵并找到a x b

2 个答案:

答案 0 :(得分:3)

您可以使用numpy模块直接从matlab类型格式的字符串创建矩阵

>>> import numpy as np
>>> a="1 2 3; 4 5 6"
>>> np.matrix(a)
matrix([[1, 2, 3],
        [4, 5, 6]])

您可以使用相同的库进行矩阵乘法

>>> A = np.matrix("1 2 3; 4 5 6")
>>> B = np.matrix("2 3; 4 5; 6 7")
>>> A * B
matrix([[28, 34],
        [64, 79]])

阅读numpy库,这是一个非常强大的模块,可用于完成您所指的所有类型的工作。

答案 1 :(得分:2)

这是一种方法,将字符串拆分为;,然后遍历每个字符串,在' '拆分然后通过它,将其转换为int并附加到子列表,然后将该子列表附加到另一个列表:

a = "1 2 3; 4 5 6"

aSplit = a.split('; ')

l = []

for item in aSplit:
    subl = []
    for num in item.split(' '):
        subl.append(int(num))
    l.append(subl)

print l