Some basic newbie questions...
Grant Edwards
grante at visi.com
Thu Dec 28 11:48:17 EST 2006
On 2006-12-28, jonathan.beckett <jonathan.beckett at gmail.com> wrote:
> Hi all,
>
> While working on support at work, I have been picking away at Python -
> because I think it could be a valuable scripting tool for building
> utilities from. I have been reading the python.org tutorials, and
> playing around with some basic code, but I have ended up with a few
> questions that probably have straightforward answers - any quick
> explanations or assistance would be fantastic...
>
>
> Question 1...
> Given the code below, why does the count method return what it does?
> How *should* you call the count method?
> a = []
> a.append(1)
> print a.count
a.count(1)
a.count(2)
> Question 2...
> What is the correct way of looping through a list object in a class via
> a method of it? (I've hit all sorts of errors picking away at this, and
> none of the tutorials I've found so far cover it very well) - apologies
> for the arbitrary class - it's the first example I thought up...
>
> class Gun:
> Shells = 10
What you wrote created a class variable: there's only a single
"Shells" object and it's shared by all instances of the class.
Based on the way you're using it, I presume you want each gun
to have it's own Shells value. You probably want something like
this:
class Gun:
def __init__(self):
self.Shells = 10
> class Battleship:
> Gun1 = Gun()
> Gun2 = Gun()
> Guns = [Gun1,Gun2]
>
> def getShellsLeft(self):
> NumShells = 0
> for aGun in Guns:
> NumShells = NumShells + aGun.Shells
> return NumShells
>
> Bizmark = Battleship()
>
> print Bizmark.getShellsLeft()
>
>
> In the above code, I guess I'm just asking for the *correct* way to do
> these simple kinds of things...
--
Grant Edwards grante Yow! Give them
at RADAR-GUIDED SKEE-BALL
visi.com LANES and VELVEETA
BURRITOS!!
More information about the Python-list
mailing list