keyerror '__repr__'

2012-08-04 Thread vijay shanker
hi
i have this class book

class book:
def __init__(self,name,price):
self.name = name
self.price = price

def __getattr__(self,attr):
if attr == '__str__':
print 'intercepting in-built method call '
return '%s:%s' %
(object.__getattribute__(self,'name'),object.__getattribute___(self,'price'))
else:
return self.__dict__[attr]

>>>b = book('the tempest',234)
>>>b
Traceback (most recent call last):
  File "", line 1, in 
  File "", line 11, in __getattr__
KeyError: '__repr__'

i am missing on a concept here. please enlighten me.
-- 
http://mail.python.org/mailman/listinfo/python-list


Coercing one object to type of another

2013-02-09 Thread Vijay Shanker
Hi
Inside a function i get a two arguments, say arg1 and arg2, how can i convert 
arg2 to same type as arg1 ?
I dont know type of arg1 or arg2 for that matter, I just want to convert arg2 
to type of arg1 if possible and handle the exception if raised.
Also:
>>> int('2')
2
>>> float('2.0')
2.0
>>> coerce(2,2.0)
(2.0,2.0)
but coerce('2',2) fails.If int('2') equals 2, why should it fail ?


-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Coercing one object to type of another

2013-02-09 Thread Vijay Shanker
On Saturday, February 9, 2013 4:13:28 PM UTC+5:30, Chris Angelico wrote:
> On Sat, Feb 9, 2013 at 9:29 PM, Vijay Shanker  wrote:
> 
> > Hi
> 
> > Inside a function i get a two arguments, say arg1 and arg2, how can i 
> > convert arg2 to same type as arg1 ?
> 
> > I dont know type of arg1 or arg2 for that matter, I just want to convert 
> > arg2 to type of arg1 if possible and handle the exception if raised.
> 
> > Also:
> 
> >>>> int('2')
> 
> > 2
> 
> >>>> float('2.0')
> 
> > 2.0
> 
> >>>> coerce(2,2.0)
> 
> > (2.0,2.0)
> 
> > but coerce('2',2) fails.If int('2') equals 2, why should it fail ?
> 
> 
> 
> You can get the type of any object, and call that:
> 
> 
> 
> def coerce(changeme,tothis):
> 
> return type(tothis)(changeme)
> 
> 
> 
> ChrisA

well it will always return me this:


what i want is if i know arg1 is of string type(and it can be of any type, say 
list, int,float) and arg2 is of any type, how can i convert it to type of arg1,
if arg1='hello world', type(arg1).__name__ will give me 'str', can i use this 
to convert my arg2 to this type, w/o resorting to if-elif conditions as there 
will be too many if-elif-else and it doesn really sounds a great idea ! 
thanks
-- 
http://mail.python.org/mailman/listinfo/python-list


Python Learning Environment

2010-04-17 Thread Vijay Shanker Dubey
Hi,

My Linux box is ubuntu system. I want to create a development environment on
my system for python programing language. I got to see there are two
versions of python language

1. python 2.5.6
2. python 3.1.2

To find out what version i look in to my "/usr/bin" folder. There are many
entries for python command

- python
- python2
- python2.5
- python2.6
- python3
- python3.1

what does this mean? I am able to run run my first program with all these
command. should i remove all these and have the latest one? I am confused
about these finding. Is this okay to have these all?


Regards,
Vijay Shanker Dubey
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Python Learning Environment

2010-04-17 Thread Vijay Shanker Dubey
Thanks friend,

Got the point.


Regards,
Vijay Shanker Dubey



On Sat, Apr 17, 2010 at 11:31 PM, Krister Svanlund <
krister.svanl...@gmail.com> wrote:

> On Sat, Apr 17, 2010 at 7:06 PM, Vijay Shanker Dubey
>  wrote:
> > Yes you are right about symlink thing.
> > So what should I do for a clever developer environment?
> > Should I change that python link to python3 or python3.1?
> >
> > Regards,
> > Vijay Shanker Dubey
> >
>
> It all depends on what you want to do. I would say that you shouldn't
> change your python link at all, if you want to run a python script
> using 3.1 just call the script using python3 as an interpreter.
> --
> http://mail.python.org/mailman/listinfo/python-list
>
-- 
http://mail.python.org/mailman/listinfo/python-list