def cell(self, col, row):
    "\n        Return a cell for col,row.\n            td.cell(col,row)\n\n        Throws exception if col or row are not integer or out of range.\n        What happens on empty cell?\n        \n        I stick to x|y format, although row|col might be more pythonic.\n        \n        Empty cell is '' not None.\n        "
    try:
        return self.table[row][col]
    except:
        self.verbose(('%i|%i doesnt exist' % (col, row)))
        exit(1)
Return a cell for col,row.
    td.cell(col,row)

Throws exception if col or row are not integer or out of range.
What happens on empty cell?

I stick to x|y format, although row|col might be more pythonic.

Empty cell is '' not None.
def cell(self, col, row):
    "\n        Return a cell for col,row.\n            td.cell(col,row)\n\n        Throws exception if col or row are not integer or out of range.\n        What happens on empty cell?\n        \n        I stick to x|y format, although row|col might be more pythonic.\n        \n        Empty cell is  not None.\n        "
    try:
        return self.table[row][col]
    except:
        self.verbose(('%i|%i doesnt exist' % (col, row)))
        exit(1)