So you want (element 0 + element 1) / 2, (element 1 + element 2) / 2, and so on.
We make two lists: one with all of the elements except the first, and another with all of the elements except the last. The averages we're looking for are the averages of each pair from both lists. To create pairs from two lists, we use zip.
Even though your input numbers are integers, I assume you want decimals in the outcome. Python divides integers by default and discards the residue. Floating-point numbers are required to divide things all the way through. Since dividing an int by a float will produce a float, so we use 2.0 for our divisor instead of 2.
averages = [(x + y) / 2.0 in zip(my list[:-1], my list[1:]) for (x, y)]
2nd question:
That application of sum should be fine. The following are some examples of works:
a = range(10)
# [0,1,2,3,4,5,6,7,8,9]
b = sum(a)
print b
# Prints 45
In addition, you don't have to assign everything to a variable at every stage. print sum(a) works perfectly.
You'll need to be more explicit about what you wrote and why it didn't work.