mirror of
https://github.com/donnemartin/data-science-ipython-notebooks.git
synced 2024-03-22 13:30:56 +08:00
25 lines
676 B
Python
25 lines
676 B
Python
class Util:
|
|
|
|
@classmethod
|
|
def is_iterable(cls, obj):
|
|
"""Determines if obj is iterable.
|
|
|
|
Useful when writing functions that can accept multiple types of
|
|
input (list, tuple, ndarray, iterator). Pairs well with
|
|
convert_to_list.
|
|
"""
|
|
try:
|
|
iter(obj)
|
|
return True
|
|
except TypeError:
|
|
return False
|
|
|
|
@classmethod
|
|
def convert_to_list(cls, obj):
|
|
"""Converts obj to a list if it is not a list and it is iterable, else
|
|
returns the original obj.
|
|
"""
|
|
if not isinstance(obj, list) and cls.is_iterable(obj):
|
|
obj = list(obj)
|
|
return obj
|