How to use imported function to get current globals

1989lzhh 1989lzhh at gmail.com
Sat Jun 7 20:28:23 EDT 2014



发自我的 iPhone

> 在 Jun 8, 2014,4:52,Chris Angelico <rosuav at gmail.com> 写道:
> 
>> On Sun, Jun 8, 2014 at 3:40 AM, 1989lzhh <1989lzhh at gmail.com> wrote:
>> Here is the code
>> m1.py
>> def f():
>>    print globals()
>> 
>> m2.py
>> from m1 import f
>> f()# how to get current module's globals?
> 
> As Ian said, you almost certainly do not want to do this. But if you
> have a solid use-case that involves finding the caller's globals, you
> can do it (in CPython - no idea about other Pythons) with the
> backtrace.
   Could you give an example ? I do want to get the caller's globals, so I can expose something into current module implicitly. Thanks!
                                                                      Liu zhenhai
> 
> Normally, passing dictionaries around is going to be MUCH more useful.
> (And probably not actually globals(), you almost never want to use
> that.)
> 
> ChrisA
> -- 
> https://mail.python.org/mailman/listinfo/python-list



More information about the Python-list mailing list