On Mar 31, 7:36 pm, Gary Herron <gher...@digipen.edu> wrote: > JavierMontoyawrote: > > Dear all, > > > I'm a newbie in python and would be acknowledge if somebody could shed > > some light on associative arrays. > > More precisely, I would like to create a multi-dimensional associative > > array. I have for example a list of students which are identified > > uniquely by their student IDs. Additionally, for each student I have > > some information: FirstName, LastName, etc. > > > The array would have then the following form: > > [StudentID] => [FirstName][LastName][Telephone]...[ ... ] > > > I would like to be able to access a field directly by using a > > StudentID > > [StudentID][FirstName] > > [StudentID][LastName] > > > How could I manipulate such an array (create the array, add elements, > > access data)? > > > Best wishes > > Create a class for student with attributes for ID, FirstName, LastName, etc. > > class Student: > def __init__(self, id, FirstName, ...): > self.id = id > self.FirstName = FirstName > ... > > then whenever you create a student object, use a dictionary to associate > the object with its is > AA = {} # An empty dictionary > s = Student(...) > AA[s.id] = s > ... and repeat for many students... > > Then to access a student's object given an id: > s = AA[id] > print s.id, s.FirstName, s.LastName, ... > > I'd *not* call this a multi-dimension association, but rather just an > association between student objects and their ids. > > Hope that helps, > > Gary Herron > > -- > Gary Herron, PhD. > Department of Computer Science > DigiPen Institute of Technology > (425) 895-4418
Dear all, Thanks for your suggestions, it worked! As Gary suggested, I created a 'student' class and mapped its objects to a dictionary. Is it possible to sort the dictionary by the student's grades in descending order? Best wishes -- http://mail.python.org/mailman/listinfo/python-list