Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #72943

Re: How to use imported function to get current globals

References <602B90F0-E7FE-4887-ADA1-981FD4179EC7@gmail.com> <CAPTjJmq8w55crQc4zh_=aEF54POryudsr-0WLkMf_AU5-L-ByA@mail.gmail.com> <510F7020-C682-4A4B-B3ED-5D289D17C5DE@gmail.com>
Date 2014-06-08 10:37 +1000
Subject Re: How to use imported function to get current globals
From Chris Angelico <rosuav@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.10870.1402187886.18130.python-list@python.org> (permalink)

Show all headers | View raw


On Sun, Jun 8, 2014 at 10:28 AM, 1989lzhh <1989lzhh@gmail.com> wrote:
>
>
> 发自我的 iPhone
>
>> 在 Jun 8, 2014,4:52,Chris Angelico <rosuav@gmail.com> 写道:
>>
>>> On Sun, Jun 8, 2014 at 3:40 AM, 1989lzhh <1989lzhh@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!

Frankly, no. I don't want to encourage implicitly exposing something
like that! Why do you want that, rather than something explicit and
clear?

ChrisA

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: How to use imported function to get current globals Chris Angelico <rosuav@gmail.com> - 2014-06-08 10:37 +1000

csiph-web