Jerry Rocteur wrote:
On Tue, Jun 22, 2010 at 9:32 PM, Jerry Rocteur <mac...@rocteur.cc> wrote:
If you were able to ask us perhaps a more specific question
and describe your problem a little more concisely perhaps
I (and we) might have a bit more to offer you.
I have a dictionary:
users[key] = { 'user' : key,
'secnum' : secnum,
'name' : name
}
Is it possible for me to code a class like this:
class GRPUser(object):
def __init__(self, user, secnum, name, groups=None):
self.user = user
self.secnum = secnum
self.name = name
Which would allow me to iterate through and access specific records ?
How do I iterate through and access an individual user record!
Thanks in advance,"
Jerry
I believe you have a dictionary of dictionaries. The outer level one is
called users, and a key to that dictionary is a string containing a user
name.
What you want to do is replace the inner dictionary with an instance of
a custom class, and you'd like to know how.
First, I'd point out that it's already a class, called dict. Using your
own class can give some advantages, but you have to decide if you want
or need them.
I don't see how having the data for one user as a class object will make
any difference in how you find that object, or how you iterate through a
dictionary or list of such objects. But if it's what you want...
class GRPUser(object):
def __init__(self, mydict):
self.user = mydict["user"]
self.secnum = mydict["secnum"]
self.name = mydict["name"]
self.groups = None
Now to find a particular user, say
currentuser = "Joe"
Just use users[currentuser]
To loop through all the users,
for user in users:
...do something with user...
To change the groups attribute of a particular user,
users[currentuser].groups = ...newvalue...
DaveA
--
http://mail.python.org/mailman/listinfo/python-list