"""Nested lists.
Lists within lists; using them to represent matrices
http://openbookproject.net/thinkcs/python/english2e/ch09.html#nested-lists
"""
# A nested list is a list that appears as an element in another list.
nested = ["hello", 2.0, 5, [10, 20]]
# To extract an element from the nested list, we can proceed in two steps:
elem = nested[3]
print elem[0]
# Or we can combine them:
print nested[3][0]
# Matrices
# Nested lists are often used to represent matrices. For example
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# matrix is a list with three elements, where each element is a row of the matrix.
# We can select an entire row from the matrix in the usual way:
print matrix[1]
# Or we can extract a single element from the matrix using the double-index form:
print matrix[1][1]
# The first index selects the row, and the second index selects the column.
def create_matrix(rows, columns) :
"""create a matrix with a given number of rows and columns
"""
matrix = []
for row in range(rows) :
matrix += [[0] * columns]
return matrix
