# # random walk problem, chapter 9 exercise 12 # in class # # functions: # # mean = average(list_of_numbers) # # distance = random_walk(n_steps) # # import random def average(numbers): """ Return mean of a list of numbers. """ return float(sum(numbers))/len(numbers) def random_walk(n_steps): """ Return distance moved in random walk of n steps. """ position = 0 for i in range(n_steps): offset = random.choice([-1, 1]) position = position + offset return position def main(): print "Finding average distance from random walk of n steps" n = input("What is n? ") iterations = 100 distances = [] for i in range(iterations): distances.append(random_walk(n)) print "First few walks: %i, %i, %i" % \ (distances[0], distances[1], distances[2]) mean = average(distances) print "The mean of %i walks is %i" % (iterations, mean) main()