You're not returning anything. Also in the for loop replace that i with "_" as you're not using that variable and it would interfere with the one you defined before hand. The print function will only send the value to the console to display it. Also if you plan on adding all those values into the list, then you'll have to first put all those values into a list inside the function, and then return the list. You can then define arr as
arr = output(10)
but if you want to append the list of numbers to
arr
then you can change them to tuples and add them together, since lists cannot be added together
list(tuple(arr)+tuple(output(10)))
. Though if you're just trying to get a list of numbers in a certain range you can just do
list(range(0, 10))
. Now since you probably don't know what the return is, I'll give an example:
import random
def add_two_random_numbers():
return random.randint(1, 5) + random.randint(1, 5) # random.randint(1, 5) return a random number between 1 and 5. They are then added together and returned
def return_two_random_numbers():
return random.randint(1, 5), random.randint(1, 5) # You can also return two or more values through commas
def return_nothing():
return # Someimes you want to use a return function just to exit out of the function and return back
print("returned") # Which is why anything after the return function will not execute
print(add_two_random_numbers())
number1, number2 = return_two_random_numbers() # You can store the return values this way if you'd like
numbers = return_two_random_numbers() # Or you can also store them this way, in which they will be returned as a tuple
print(number1, number2, numbers)
print(return_nothing())
Output:
5
3 2 (4, 4)
None