0

hi again! at school we were learning about perfect numbers and i thought it would be useful to write a program to find them i currently have this code:

```
b= 1
h= 1
factors = [1,]
n = float(raw_input("what is the number?"))
while h < n:
if h*b == n:
print h, "is not a factor"
h=h+1
else:
if h == 1:
print h, "is a factor"
h=h+1
else:
print h, "is a factor"
factors.append(h)
h=h+1
if h <= n:
b = factors [0:] + factors [:40]
c = factors [0:] * factors [:40]
if b==n:
print n, "is not a perfect number"
else:
print "halfway there"
if c==n:
print n, "is not a perfect number"
else:
print n, "is a perfect number"
```

but i get the error

Traceback (most recent call last):

File "C:\Python25\perfect nums.py", line 22, in <module>

c = factors [0:] * factors [:40]

TypeError: can't multiply sequence by non-int of type 'list'

can you help please?

thanks in advance