class problem, NoneType obj has no attribute
Bruno Desthuilliers
bruno.42.desthuilliers at websiteburo.invalid
Fri May 16 08:19:08 EDT 2008
globalrev a écrit :
> wassup here?
>
>
> 7
>
> Traceback (most recent call last):
> File "C:\Python25\myPrograms\netflix\netflix.py", line 22, in
> <module>
> print cust1.getID()
> AttributeError: 'NoneType' object has no attribute 'getID'
>
>
>
> class customer:
1/ naming convention : class names should be CamelCased
2/ unless you need compatibility with years old Python versions, use
newstyle classes
class Customer(object):
> def __init__(self, ID, movies):
> self.ID = ID
> self.movies = movies
3/ naming conventions : ALL_UPPER_NAMES denote (pseudo) constants
def __init__(self, id, movies):
self.id = id
self.movies = movies
> def getID():
> return self.ID
>
> def getMovies():
> return self.movies
4/ Python has support for computed attributes, so you just don't need
these getters.
>
> import os
> import customer
> import movie
>
> mv1 = open('C:\\Python25\\myPrograms\\netflix\\mv1exp2.txt', 'r+')
> mv1str = mv1.read()
>
> print mv1str.count(',5,')
>
> cust1 = customer.__init__('12',['1','435','2332'])
__init__ is automagically called on instanciation, so you don't have to
call it yourself. And FWIW, your __init__ returns None.
cust1 = Customer('12', ['1', '435', '2332'])
> print cust1.getID()
print cust1.id
More information about the Python-list
mailing list