在我的代码中,在声明了全局变量prime之后,它应该从第一个变量中获取值并添加到第二个变量中,在执行之后,我应该得到一个类似于[1,2,3,7]的数组。但是当我打印第二个函数时,我只得到了[3,7]。知道我错在哪里吗?这是我的密码:
import numpy as np
prime = []
nprime = []
def first():
global prime
global nprime
prime = np.append(1, 2)
nprime = np.append(6, 4)
return (prime, nprime)
def second():
global prime
prime = np.append(3, 7)
return prime
A = second()
print A
假设您确实在程序中调用了
first()
,那么问题发生的原因是-您正在创建一个新列表
[3,7]
,并将其分配给prime
变量。这不会附加到现有的素数。你知道吗我甚至不知道为什么要使用
np.append()
,如果要将单个值附加到简单列表,请使用list.append()
,如果要将多个值附加到简单列表,请使用list.extend()
。示例-也就是说,不建议使用全局变量,一种更简单的方法是从第一个函数返回值,并将其作为参数传递给第二个函数,例如-
这是一个非常简单的例子,不知道你想用这个做什么。你知道吗
相关问题 更多 >
编程相关推荐