how to access data attributes of a class object

namrata bapat.namrata at gmail.com
Fri Jun 4 16:29:07 EDT 2010


Thanks a lot Peter. It works.

On Jun 4, 12:26 pm, Peter Otten <__pete... at web.de> wrote:
> namrata wrote:
> > I am creating an instance of a class. for example let the class be
> > Temp and the attributes of the class be first_name and last_name.
> > in order to access the attributes i will usually use the following
> > command:
> > a = Temp()
> > a.last_name = "*******"
>
> > now, i am using sqlalchemy and mapping a table in postgresql to
> > python. i am trying to implement a method where i can pass the column
> > name and a value to the method. the method will fire a query for that
> > column name and value. the query is as follows:
> > query = session.query(Temp).query.filter(Temp.last_name == some_value)
>
> > the column name passed to the method is stored in a local variable say
> > 'col_name'
> > how do i pass this local variable to the query. when i try the below
> > query it throws an error saying col_name is not an attirbute
> > query = session.query(Temp).query.filter(Temp.col_name == some_value)
>
> I'd guess you can use getattr():
>
> query = session.query(Temp).query.filter(getattr(Temp, col_name) ==
> some_value)
>
> Peter




More information about the Python-list mailing list