In this kata we are focusing on the Numpy python package. You must write a function called `looper` which takes three integers `start, stop and number` as input and returns a list from `start` to `stop` with `number` total values in the list.  Five examples are shown below:

```
looper(1, 5, 1) = [1.0]
looper(1, 5, 2) = [1.0, 5.0]
looper(1, 5, 3) = [1.0, 3.0, 5.0]
looper(1, 5, 4) = [1.0, 2.333333333333333, 3.6666666666666665, 5.0]
looper(1, 5, 5) = [1.0, 2.0, 3.0, 4.0, 5.0]
```

Difficulty: EASY
Starter code: def looper(start, stop, number):
	

Solutions:
from numpy import linspace

def looper(start, stop, number):
	return list(linspace(start, stop, number))


def looper(start, stop, number):
	if number == 1:
		return [start]
	elif number == 2:
		return [start, stop]
	increment = (stop - start) / (number - 1)
	arr = []
	for n in range(0, number - 1):
		new_element = start + n * increment
		arr.append(new_element)
	arr.append(float(stop))
	return arr


def iter(start, number, step):
	for i in range(number - 1):
		yield float(start + step * i)

def looper(start, stop, number):
	if number == 1:
		return [start]
	step = (stop - start) / (number - 1)
	lt = list(iter(start, number, step))
	lt.append(stop)
	return lt


import numpy as np

def looper(start, stop, n):
	return np.linspace(start, stop, n).tolist()


from numpy import linspace

def looper(*args):
	return list(linspace(*args))


from numpy import linspace

def looper(*a):
	return list(linspace(*a))


looper = lambda a, z, n: [a] if n == 1 else [a] + [(z - a) / (n - 1) * i + a for i in range(1, n - 1)] + [z]


def looper(start, stop, number):
	(c, r, s) = (0, [], (stop - start) / (number - (1 if number > 1 else 0)))
	while c < number:
		r.append(start + c * s)
		c += 1
	if number > 1:
		r.pop()
		r.append(stop)
	return r


looper = lambda Q, S, R: [Q + (S - Q) / (R - 1) * V for V in range(R - 1)] + [S] if 1 < R else [Q]