Answer on Question #62739 - Programming & Computer Science - Python
Question 62739:
def manipulate_data(data):
if isinstance(data, (list, tuple, set)):
return [len([n for n in data if isinstance(n, int) and n >= 0]),
sum(n for n in data if isinstance(n, int) and n < 0)]
return 0When I input this code it says:
test_only_lists_allowed Failure in line 11, in test_only_lists_allowed self.assertEqual(result, 'Only lists allowed', msg='Invalid argument') AssertionError: Invalid argument.
Answer:
def manipulate_data(data):
if isinstance(data, (list, tuple, set)): # In fact, data can be any iterable object
if isinstance(data, list): # Data is almost certainly a list
print('Lists are allowed')
return [len([n for n in data if isinstance(n, int) and n > 0]),
sum(n for n in data if isinstance(n, int) and n < 0)]
if not isinstance(data, list):
return 'Only lists allowed' # You see, data is not a listhttps://www.AssignmentExpert.com