Sample script:
from tabulate import tabulate
table = [["spam", 41.9999], ["eggs", "451.0"], ["sausages", None]]
print(tabulate(table, headers='keys', tablefmt='plain'))
print(tabulate(table, headers='keys', tablefmt='plain', maxcolwidths=40))
The last line leads to this exception:
Traceback (most recent call last):
File "test.py", line 7, in <module>
print(tabulate(table, headers='keys', tablefmt='plain', maxcolwidths=40))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "tabulate/__init__.py", line 2061, in tabulate
list_of_lists = _wrap_text_to_colwidths(
^^^^^^^^^^^^^^^^^^^^^^^^
File "tabulate/__init__.py", line 1516, in _wrap_text_to_colwidths
str(cell) if _isnumber(cell) else _type(cell, numparse)(cell)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: NoneType takes no arguments
(from version 0.90, in the latest commit only the line numbers change)
This is a simple fix, line 1516 (for v0.9.0) should have another guard, like so:
'' if cell is None else str(cell) if _isnumber(cell) else _type(cell, numparse)(cell)
I'll do a PR soon.