首页 > 解决方案 > 编写一个名为 randomization 的函数,将一个正整数 n 作为输入,并返回 A,一个随机的 nx 1 Numpy 数组

问题描述

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

以下是我所拥有的,但它不起作用。

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'”。

标签: pythonfunctionnumpyrandominteger

解决方案


首先,n == int将永远是假n的,因为不是类型int。改为使用isinstance(n, int)

因此,A永远不会分配,但是您调用print(A)时就好像它分配一样。


推荐阅读