class ListTable(list):
""" Overridden list class which takes a 2-dimensional list of the form [[1,2,3],[4,5,6]]
and renders an HTML Table in IPython Notebook. """
def _repr_html_(self):
html = ["<table>"]
for row in self:
html.append("<tr>")
for col in row:
html.append("<td>{0}</td>".format(col))
html.append("</tr>")
html.append("</table>")
return ''.join(html)
import random
table = ListTable()
table.append(['x', 'y', 'x-y', '(x-y)^2'])
for i in xrange(7):
x = random.uniform(0, 10)
y = random.uniform(0, 10)
table.append([x, y, x-y, (x-y)**2])
table
x | y | x-y | (x-y)^2 |
8.90990894092 | 2.73708114406 | 6.17282779687 | 38.1038030097 |
8.37939022286 | 2.89965549177 | 5.47973473109 | 30.0274927231 |
1.9603923777 | 1.58915711179 | 0.371235265914 | 0.137815622658 |
5.29883233292 | 2.60058684074 | 2.69824549218 | 7.2805287361 |
6.25154987151 | 8.92385633612 | -2.67230646461 | 7.1412218408 |
3.87441580408 | 3.62080255925 | 0.253613244835 | 0.064319677956 |
1.69084608687 | 5.99836905642 | -4.30752296955 | 18.5547541332 |