error
speen saba
moonlightmadness86 at gmail.com
Thu Nov 28 01:37:37 CET 2013
Hello there,
I am attending the lectures, and written the codes according to lectures. Professor's codes are working fine, but my one gives an error. I am new to python. Please it's a humble request, just be easy on me while making me understand about the code. It will be much appreciated.
import math
##points as lists
def addPoints(p1, p2):
r = []
r.append(p1[0]+p2[0])
r.append(p1[1]+p2[1])
return r
p = [1,2]
q = [3,1]
r = addPoints(p,q)
print r
##points as classes
class cartesianPoint():
pass
cp1 = cartesianPoint()
cp2 = cartesianPoint()
cp1.x = 1.0
cp1.y = 2.0
cp2.x = 3.0
cp2.y = 1.0
def samePoint(p1,p2):
return (p1.x == p2.x) and (p1.y == p2.y)
def printPoint(p):
print '(' + str(p.x) + ', ' +str(p.y) + ')'
class polarPoint:
pass
pp1 = polarPoint()
pp2 = polarPoint()
pp1.radius = 1.0
pp1.angle = 0
pp2.radius = 2.0
pp2.angle = math.pi / 4.0
class cPoint():
def __init__(self,x,y):
self.x = x
self.y = y
self.radius = math.sqrt(self.x*self.x + self.y*self.y)
self.angle = math.atan2(self.y, self.x)
def cartesian(self):
return (self.x, self.y)
def polar(self):
return (self.radius, self.angle)
def __str__(self):
return '(' + str(self.x) + ', ' + str(self.y) + ')'
def __cmp__(self,other):
return (self.x == other.x) and (self.y == other.y)
And below is the error. Evrything works fine untill class polar point, but when I try to pick point (instance) p in the list i.e x,y (1,2,3,1). It does not work. I mean p.x gets the error where it should give me the value of x. And i know this error will go all the way down to def__cmp if i dont fic it from top.
>>> p.x
Traceback (most recent call last):
File "<pyshell#46>", line 1, in <module>
p.x
AttributeError: 'list' object has no attribute 'x'
>>> p.y
Traceback (most recent call last):
File "<pyshell#47>", line 1, in <module>
p.y
AttributeError: 'list' object has no attribute 'y'
Help will be much appreciated, thanks in advance.
More information about the Python-list
mailing list