在递归期间可变使用?

时间:2015-12-02 21:08:50

标签: python variables recursion scope

所以,我试图解决一个问题,即找到一个元组的最大深度(例如,深度(' a',' b',' ; c',' d,(' e'' f'' g')))应返回2和深度((' a',(' b',),(' c',(' d',(' e& #39;,),f),(' g',' h',' i'))))应返回4。 我正在尝试使用递归来解决我使用计数器的问题' c'跟踪每个元组的深度(在主元组内)。问题是,我收到以下错误,本地变量' s'在分配前引用

我的代码类似于:

s=0
def depth(tuple):
     do something
     s=s+1
     depth(some_nested_tuple)
     return

我做错了什么?

1 个答案:

答案 0 :(得分:0)

如果你想在函数中使用>>> MultiLabelBinarizer().fit_transform([["A", "B"], ["C", "D"]]) array([[1, 1, 0, 0], [0, 0, 1, 1]]) 变量做一些事情,你必须这样做:

global