Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

to create variable from dict

0 views
Skip to first unread message

hiral

unread,
Mar 12, 2010, 8:59:18 AM3/12/10
to
Hi,

Is there any way to create variables which name matches with dict key?

For example:
dict1 = {"abc":'1", "def":"2"}

Now I am looking to have variable name abc and it's value be '1' etc.

Pl. suggest.

Thank you.

Tim Chase

unread,
Mar 12, 2010, 9:40:52 AM3/12/10
to pytho...@python.org
hiral wrote:
> Is there any way to create variables which name matches with dict key?
>
> For example:
> dict1 = {"abc":'1", "def":"2"}
>
> Now I am looking to have variable name abc and it's value be '1' etc.

1) you can't because "def" is a reserved word in Python.

2) why do you want to? This seems to come up about every week or
so and people STILL want to do it. Search the archives...you
won't have to go back too far.

3) once you have it, how do you plan to use the variables? If
you don't know what they'll be named ahead of time, how can you
use them in your code

The usual answer is "don't do that -- just use them as a dict",
or if you're trying to set up some constants, you can use

abc, def_, ghi = 1, 2, 3

-tkc

Luis M. González

unread,
Mar 12, 2010, 9:50:18 AM3/12/10
to

Check out this thread (very recent):
http://groups.google.com/group/comp.lang.python/browse_thread/thread/bb1797ffb6fc3bd7/25fe94103c7a231f?lnk=gst&q=luis+variables#25fe94103c7a231f

Short answer: you can update globals() with a dictionary, as follows:

globals().update( dict1 )

Then you'll have each key-value pair as variables in the global
namespace.
The question is: should you do it?

Luis

Jean-Michel Pichavant

unread,
Mar 12, 2010, 10:02:24 AM3/12/10
to "Luis M. González", pytho...@python.org
The answer is known: no, he should not do it :o)

JM

Andreas Waldenburger

unread,
Mar 13, 2010, 6:41:38 AM3/13/10
to
On Fri, 12 Mar 2010 06:50:18 -0800 (PST) Luis M. González
<lui...@gmail.com> wrote:

> The question is: should you do it?

And the answer is: No.

And the usual disclaimer is: (Unless you *know* it's the best possible
solution to your problem.)

/W

--
INVALID? DE!

hiral

unread,
Mar 15, 2010, 2:51:42 AM3/15/10
to
On Mar 12, 8:02 pm, Jean-Michel Pichavant <jeanmic...@sequans.com>
wrote:
> Luis M. González wrote:

> > On Mar 12, 10:59 am,hiral<hiralsmaill...@gmail.com> wrote:
>
> >> Hi,
>
> >> Is there any way to create variables which name matches with dict key?
>
> >> For example:
> >> dict1 = {"abc":'1", "def":"2"}
>
> >> Now I am looking to have variable name abc and it's value be '1' etc.
>
> >> Pl. suggest.
>
> >> Thank you.
>
> > Check out this thread (very recent):
> >http://groups.google.com/group/comp.lang.python/browse_thread/thread/...

>
> > Short answer: you can update globals() with a dictionary, as follows:
>
> > globals().update( dict1 )
>
> > Then you'll have each key-value pair as variables in the global
> > namespace.
> > The question is: should you do it?
>
> > Luis
>
> The answer is known: no, he should not do it :o)
>
> JM- Hide quoted text -
>
> - Show quoted text -

Thanks for your explanations.

0 new messages