在python中设置全局矩阵

时间:2014-09-26 11:10:55

标签: python matrix global setting

我想将传入的数据保存到一个记住其先前数组位置的数组中 test.py

global data, in_data
data_hold = {}
data = 0

def start_input(atm_data):
   data_hold[data] = atm_data

从其他模块调用两次时:

test.start_input (5)
test.start_input (6)

错误输出为:

UnboundLocalError: local variable 'data' referenced before assignment

我尝试将data = 0置于start_input(atm_data)模块中,但数据已输入

data_hold[0] = 5
data_hold[0] = 6

我希望输出为:

data_hold[0] = 5
data_hold[1] = 6, and so on

2 个答案:

答案 0 :(得分:0)

类似的东西:

data_hold = []

def start_input(atm_data):
    data_hold.append(atm_data)

应该有效,没有任何global的东西。

但话虽如此,一个模块并不是一个合适的课程的最佳替代品,这就是你想要的。

答案 1 :(得分:0)

data = 0
data_hold = {}
atm_data  = {}

def start_input(atm_data):
    global data
    data_hold[data] = atm_data
    data +=1

 testing:
 start_input(5)
 start_input(6)
 start_input(7)

 output:
 data_hold[0] = 5
 data_hold[1] = 6
 data_hold[2] = 7