我正在尝试生成一个矩阵,其中包含 mxn 并包含随机数。我生成了以下代码,但对收到的错误感到困惑。这是我正在使用的代码:
class MP:
def __init__(self,
mSize, nSize
):
self.mSize=mSize,
self.nSize=nSize
def RMatrix(param):
assert isinstance(param, MP)
m = int(param.mSize)
n = int(param.nSize)
A=np.random.rand(m,n)
return (np.matrix(A))
我收到错误:int() 参数必须是字符串或数字,而不是“元组”。为什么值作为元组传递?这是怎么回事,我该如何解决?
最佳答案
明白了。您的 init (at self.mSize=mSize**,**) 中有一个逗号。删除它,您的代码将正常工作。
import numpy as np
class MP:
def __init__(self,
mSize, nSize
):
self.mSize=mSize
self.nSize=nSize
def RMatrix(param):
assert isinstance(param, MP)
m = int(param.mSize)
n = int(param.nSize)
A=np.random.rand(m,n)
return (np.matrix(A))
x=MP(3,3)
print x.RMatrix()
输出:
[[ 0.88170563 0.56061723 0.71311863]
[ 0.3550273 0.83179011 0.10337231]
[ 0.43324567 0.52177816 0.04648175]]
关于python - 随机矩阵 : int() argument must be a string or a number, 不是 'tuple',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48094327/