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: introductory

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()

import numpy as np
def looper(start, stop, number):
    return np.linspace(start, stop, number, dtype=np.float).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]