File .deepsource.toml
not found in the default branch of the repository root. Please refer to the docs.
isinstance
calls PYL-R1701 48def make_all_decimals_floats(data):
49 if isinstance(data, list):
50 return [make_all_decimals_floats(x) for x in data]
51 elif isinstance(data, dict) or isinstance(data, collections.OrderedDict): 52 return {
53 make_all_decimals_floats(key): make_all_decimals_floats(val)
54 for key, val in data.items()
62def make_all_dates_times_strings(data):
63 if isinstance(data, list):
64 return [make_all_dates_times_strings(x) for x in data]
65 elif isinstance(data, dict) or isinstance(data, collections.OrderedDict): 66 return {
67 make_all_dates_times_strings(key): make_all_dates_times_strings(val)
68 for key, val in data.items()
67 make_all_dates_times_strings(key): make_all_dates_times_strings(val)
68 for key, val in data.items()
69 }
70 elif isinstance(data, datetime.date) or isinstance(data, datetime.datetime): 71 return str(data)
72 else:
73 return data
76def make_all_datetimes_dates(data):
77 if isinstance(data, list):
78 return [make_all_datetimes_dates(x) for x in data]
79 elif isinstance(data, dict) or isinstance(data, collections.OrderedDict): 80 return {
81 make_all_datetimes_dates(key): make_all_datetimes_dates(val)
82 for key, val in data.items()
You can pass a tuple of types you want to check as the second argument to isinstance
.
If the object matches with any of the types, it will return True
else False
.
It is therefore recommended to merge multiple consecutive isinstance
calls into one. It is clearer and improves readability.
# Instead of
if isinstance(i, int) or isinstance(i, float):
print('A number')
# Do this
if isinstance(i, (int, float)):
print('A number')