Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #96038
| References | <c3363$547e74fe$5419aafe$24179@news.ziggo.nl> <58e0d1b5-a7ca-4811-9926-fba1b7ede83f@googlegroups.com> <CAPTjJmpkry3qBL9ntf4gUsE-aDGLooHqViMBW=ZNcK2Lb9e9nA@mail.gmail.com> <55EA487D.2010807@gmail.com> |
|---|---|
| Date | 2015-09-05 11:54 +1000 |
| Subject | Re: Python handles globals badly. |
| From | Chris Angelico <rosuav@gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.155.1441418073.8327.python-list@python.org> (permalink) |
On Sat, Sep 5, 2015 at 11:42 AM, Michael Torrie <torriem@gmail.com> wrote: > On 09/04/2015 06:27 PM, Chris Angelico wrote: >> If you want the first one, well, there are languages like that, and >> you're welcome to use those. For the latter, it's easy enough to do >> something like this: >> >> import types >> _g = types.SimpleNamespace() >> >> def accumulate(x): >> _g.accum += x >> return _g.accum >> >> Look, Ma! No global statement! > > Since most of the time for me when I need a global, I need it to be an > app global (more than just one module) and I use it to store > configuration. So I just use another module for that. > > import my_global_module as _g > > _g.some_setting = 5 Yeah. Comes to the same thing; if you use a dotted lookup, it's not assigning to the global. Of course, you still have all the other concerns about globals. You've just buried them behind a level of indirection. > I get the impression, thought, that our esteemed poster is still trying > to battle the Java windmill, but in Python now and will never accept > anything we try to tell him about the Python way. Python does have its > warts, but often attempts to fix the warts would just make things a lot > worse. So I accept them as part of Python's character and try to use > them to my advantage. Indeed. The key to being a good programmer is not "write your code despite the language you're using", but "write the code in the language you're using". ChrisA
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: Python handles globals badly. tdev@freenet.de - 2015-09-04 12:11 -0700
Re: Python handles globals badly. Ian Kelly <ian.g.kelly@gmail.com> - 2015-09-04 13:48 -0600
Re: Python handles globals badly. Ian Kelly <ian.g.kelly@gmail.com> - 2015-09-04 13:52 -0600
Re: Python handles globals badly. Chris Angelico <rosuav@gmail.com> - 2015-09-05 10:27 +1000
Re: Python handles globals badly. Michael Torrie <torriem@gmail.com> - 2015-09-04 19:42 -0600
Re: Python handles globals badly. Chris Angelico <rosuav@gmail.com> - 2015-09-05 11:54 +1000
Program in or into (was Python handles globals badly) Rustom Mody <rustompmody@gmail.com> - 2015-09-04 20:18 -0700
Re: Program in or into (was Python handles globals badly) Chris Angelico <rosuav@gmail.com> - 2015-09-05 13:31 +1000
Re: Program in or into (was Python handles globals badly) Steven D'Aprano <steve@pearwood.info> - 2015-09-06 12:35 +1000
Re: Program in or into (was Python handles globals badly) MRAB <python@mrabarnett.plus.com> - 2015-09-06 03:54 +0100
Re: Program in or into (was Python handles globals badly) Rustom Mody <rustompmody@gmail.com> - 2015-09-05 21:35 -0700
Re: Program in or into (was Python handles globals badly) random832@fastmail.us - 2015-09-06 01:26 -0400
Re: Program in or into (was Python handles globals badly) wxjmfauth@gmail.com - 2015-09-06 00:42 -0700
Re: Program in or into (was Python handles globals badly) Ian Kelly <ian.g.kelly@gmail.com> - 2015-09-06 18:19 -0600
csiph-web