Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #70943
| Newsgroups | comp.lang.python |
|---|---|
| Date | 2014-05-05 21:32 -0700 |
| References | <mailman.9690.1399348396.18130.python-list@python.org> |
| Message-ID | <6fe61129-09d1-48eb-9877-effb7fa49d27@googlegroups.com> (permalink) |
| Subject | Re: Pass variable by reference |
| From | Rustom Mody <rustompmody@gmail.com> |
On Tuesday, May 6, 2014 6:09:44 AM UTC+5:30, Satish Muthali wrote:
> Hello experts,
> I have a burning question on how to pass variable by reference in Python.
Technically correct answer: You cant. But see below.
> I understand that the data type has to be mutable.
I dont know that mutability has any bearing on this
You can get mostly the effect of pass by reference by using:
- multiple values (tuple) return
- unpacking assignment
Like so:
>>> def foo(x,y):
... return x+1, y+3
...
>>> x,y= 1,2
>>> x,y=foo(x,y)
>>> x,y
(2, 5)
>>>
> For example, here's the issue I am running in to:
> I am trying to extract the PostgreSQL DB version for example:
> pgVer = [s.split() for s in os.popen("psql --version").read().splitlines()]
> print pgVer[0]
> for i, var in enumerate(pgVer[0]):
> if i == len(pgVer[0]) - 1:
> pgversion = var
> I would now like to pass 'pgversion' (where the value of pgversion is 9.3.4) by reference, for example:
> I want to nuke /var/lib/postgresql/9.3.4/main/data , however programatically I want it to be as: /var/lib/postgresql/<value of pgversion>/main/data
I dont really understand your example
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Pass variable by reference Satish Muthali <satish.muthali@gmail.com> - 2014-05-05 17:39 -0700
Re: Pass variable by reference Rustom Mody <rustompmody@gmail.com> - 2014-05-05 21:32 -0700
Re: Pass variable by reference Steven D'Aprano <steve@pearwood.info> - 2014-05-06 08:18 +0000
Re: Pass variable by reference Marko Rauhamaa <marko@pacujo.net> - 2014-05-06 12:11 +0300
Re: Pass variable by reference Chris Angelico <rosuav@gmail.com> - 2014-05-06 19:53 +1000
Re: Pass variable by reference Marko Rauhamaa <marko@pacujo.net> - 2014-05-06 13:38 +0300
Re: Pass variable by reference Chris Angelico <rosuav@gmail.com> - 2014-05-06 20:45 +1000
csiph-web