On 06/08/2012 01:09, Rotwang wrote:
On 06/08/2012 00:46, PeterSo wrote:
I am just starting to learn Python, and I like to use the editor
instead of the interactive shell. So I wrote the following little
program in IDLE
# calculating the mean
data1=[49, 66, 24, 98, 37, 64, 98, 27, 56, 93, 68, 78, 22, 25, 11]
def mean(data):
return sum(data)/len(data)
mean(data1)
There is no syntax highlighting and when I ran it F5, I got the
following in the shell window.
>>> ================================ RESTART
================================
Any ideas?
I don't know what editor you're using or how it works, but I'm guessing
that pressing f5 runs what you've written as a script, right? In that
case the interpreter doesn't automatically print the result of
expressions in the same way that the interactive interpreter does; you
didn't tell it to print anything, so it didn't.
It looks like it's IDLE.
If I added print mean(data1), it gave me a invalid syntax
Which suggests to me that it's Python 3.
# calculating the mean
data1=[49, 66, 24, 98, 37, 64, 98, 27, 56, 93, 68, 78, 22, 25, 11]
data2=[1,2,3,4,5]
def mean(data):
return sum(data)/len(data)
mean(data1)
print mean(data1)
If you're using Python 3.x, you'll need to replace
print mean(data1)
with
print(mean(data1))
since the print statement has been replaced with the print function in
Python 3.
If you're instead using Python 2.x then I don't know what the problem
is, but in that case your mean() function won't work properly - the
forward slash operator between a pair of ints gives you floor division
by default, so you should instead have it return something like
float(sum(data))/len(data).
--
http://mail.python.org/mailman/listinfo/python-list