Skip to content

Commit 2cbe47f

Browse files
committed
combine branches for OrderedDict and dict
1 parent 63d8d21 commit 2cbe47f

File tree

1 file changed

+3
-13
lines changed

1 file changed

+3
-13
lines changed

tabulate.py

+3-13
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
from __future__ import print_function
66
from __future__ import unicode_literals
7-
from collections import namedtuple, OrderedDict
7+
from collections import namedtuple
88
from platform import python_version_tuple
99
import re
1010

@@ -521,8 +521,8 @@ def _normalize_tabular_data(tabular_data, headers):
521521
and hasattr(rows[0], "_fields")): # namedtuple
522522
headers = list(map(_text_type, rows[0]._fields))
523523
elif (len(rows) > 0
524-
and isinstance(rows[0], OrderedDict)):
525-
# OrderedDict
524+
and isinstance(rows[0], dict)):
525+
# works for dict and OrderedDict
526526
mmap = {} # implements hashed lookup
527527
keys = [] # storage for set
528528
for row in rows :
@@ -535,16 +535,6 @@ def _normalize_tabular_data(tabular_data, headers):
535535
rows = [[row.get(k) for k in keys] for row in rows]
536536
if headers == 'keys' :
537537
headers = keys
538-
elif (len(rows) > 0
539-
and isinstance(rows[0], dict)):
540-
# dict
541-
keys = set()
542-
for row in rows :
543-
keys.update(row.keys())
544-
keys = list(map(_text_type, keys))
545-
rows = [[row.get(k) for k in keys] for row in rows]
546-
if headers == 'keys' :
547-
headers = keys
548538
elif headers == "keys" and len(rows) > 0: # keys are column indices
549539
headers = list(map(_text_type, range(len(rows[0]))))
550540

0 commit comments

Comments
 (0)