HI,  I have some test code:<div><br></div><div><br></div><div>def num(num):</div><div>    def deco(func):</div><div>        def wrap(*args, **kwargs):</div><div>            inputed_num = num</div><div>            return func(*args, **kwargs)</div>
<div>        return wrap</div><div>    return deco</div><div><br></div><div><br></div><div>@num(5)</div><div>def test(a):</div><div>    return a + inputed_num</div><div><br></div><div>print test(1)</div><div><br></div><div>
<br></div><div>when run this code,  I got an error shows that 'inputed_num' is not defined</div><div><br></div><div>My question is: </div><div>In wrap function,  is there not a closure that func can got 'inputed_num' ? </div>
<div><br></div><div><br></div><div><br></div><div>Anyway, If not,  how should I do to got my aim:  Initialize some value, and use this value directly in the main function.</div><div><br></div><div><br></div><div>Thinks.</div>