编写一个名为randomization的函数,该函数将一个正整数n作为输入,并返回A,一个随机的n x 1 Numpy数组

s5a0g9ez  于 2023-02-04  发布在  其他
关注(0)|答案(5)|浏览(116)

编写一个名为randomization的函数,该函数以正整数n作为输入,并返回A,即一个随机n x 1 numpy数组。
下面是我有什么,但它不工作.

import numpy as np

def randomization(n):
    if n>0 and n==int:
        A=np.random.random([n, 1])
    print(A)
x=int(input("enter a positive number: "))
r=randomization(x)
print(r)

如果我运行这个程序,我会得到一条消息,说“赋值前引用了局部变量”A“”。

7d7tgy0s

7d7tgy0s1#

除了chepner所说的,np.random.rand期望维度作为参数,而不是列表。也就是说,你应该使用A=np.random.rand(n,1)。注意,这将返回一个均匀分布的随机向量。而且,你的函数不返回任何值。在结尾使用- return A。

ss2ws0br

ss2ws0br2#

首先,n == int将始终为false,因为n不是int类型。
正因为如此,A永远不会被赋值,但是当你调用print(A)时,就好像它被赋值了一样。

qco9c6ql

qco9c6ql3#

我想你要找的是这样的东西,你必须定义你的函数,设置A等于一个随机矩阵nx1,然后在你的定义中返回值A。

A = np.random.random([n,1])
      return A

希望这能有所帮助

sigwle7e

sigwle7e4#

Q)编写一个名为randomization的函数,它以正整数n作为输入,并返回A,一个随机的n × 1 numpy数组。
随机化定义(n):随机数组=np.随机.随机([n,1])返回随机数组a=随机化(4)打印(a)

xvw2m8pv

xvw2m8pv5#

尝试使用此。请确保缩进正确:

def operations(h,w):
    """
    Takes two inputs, h and w, and makes two Numpy arrays A and B of size
    h x w, and returns A, B, and s, the sum of A and B.
    Arg:
      h - an integer describing the height of A and B
      w - an integer describing the width of A and B
    Returns (in this order):
      A - a randomly-generated h x w Numpy array.
      B - a randomly-generated h x w Numpy array.
      s - the sum of A and B.
    """
    A = np.random.random([h,w])
    B = np.random.random([h,w])
    s = A + B
    return A,B,s
A,B,s = operations(3,4)
assert(A.shape == B.shape == s.shape)*

相关问题