Iteration over lists, Python Programming

 

What if you had a list of integer values, and you need to add  them  up and give the sum?  Here are a number of different types of doing  it.

First,  here  is a type in a style  you  may  have  learned to write  in a Java class (actually, you would have used  for, but Python does not have a for that works  like the one in C and Java).

 

def addList1(l):

sum  = 0

listLength = len(l)

i =  0

while (i < listLength):

sum  = sum + l[i]

i =  i + 1 return sum

 

It increments the index i from 0 through the length of the list - 1, and includes the appropriate components of the list into the sum.  This is perfectly right, but pretty verbose and easy to get wrong.

Here is a method of version using  Python's for loop.

 

def addList2(l):

sum  = 0

for i in range(len(l)):

sum  = sum + l[i]

return sum

 

A loop of the form

 

for x in l: something will be executed once for each element in the structure l, with the variable x having each successive element in l on each iteration. So,for  x in range(3): print x will print  0 1 2. Back to addList2,  we look that i will take on variables  from 0 to the length  of the list minus 1, and on every iteration, it will include the appropriate component from l into the addition.  This is more compact and simpler to get right than  the ?rst method of version, but still not the good one  we can do!

 

This one is even more direct.

 

def addList3(l):

sum  = 0

for  v in l:

sum  = sum + v return sum

 

We do not ever really need to work with the indices.  Here, the internal variable v gets on each successive integer  in l, and those values  are goes into sum.

 

For the truly  lazy, it turns out that  the function we need  is already built  into Python. It is known as sum:

 

def addList4(l):

return sum(l)

 

Posted Date: 8/9/2012 7:20:38 AM | Location : United States







Related Discussions:- Iteration over lists, Assignment Help, Ask Question on Iteration over lists, Get Answer, Expert's Help, Iteration over lists Discussions

Write discussion on Iteration over lists
Your posts are moderated
Related Questions

Normalize a vector Let's imagine we want  to normalize a vector  of three  variables;  that  is to compute a new  vector  of three values,  such that its size  is 1. Here is o

Internal models As we want to create  more and more complex  machine with  software programs as controllers, we search  that  it is often needful  to create  additional types

We encourage you to adopt an interactive style of debugging and programming. Use the Python shell a lot. Write short pieces of code and check them.  It is much  simpler to test the

Import the sample code below into the Python IDLE and enhance it, run it and debug it. Add features to make this a more realistic database tool by providing for easy data entry an

Synthetic models One  goal  of various  people in a variety of sub-disciplines of  electrical  engineering and  computer science is automatic synthesis of machine from  formal

Assume you have a truck which has to travel across a desert from the base camp at position 0 (left) to the target camp at position 4 (right). The intermediate positions 1,2, and 3

Procedures as First-class objects In Python, unlike  many  other  languages, methods are behave in much  the same way as num­ bers:  they  can be stored as values  of variable

how to calculate angle between 2 moving line in 2d space

In Python, the fundamental abstraction of a computation is as a procedure (other  books call them "functions" instead; we will end  up  using  both  values).   A function that  tak