Если вы хотите, чтобы ваш код печатал выходные данные вызова функции, вам придется изменить последнюю строку следующим образом:
print(number_range(2,8))
Кроме того, выходные данные вашей функции для этого входа будут [3 , 4, 5, 6, 7, 8]. Как они сказали вам, то, как вы использовали range (), вообще не распространено и может быть изменено стандартом (first, last + 1).
Если вы действительно хотите использовать range (), то Кстати, это в основном range () с одним параметром, вам нужно сделать это следующим образом, вычтя 1:
def number_range(num1,num2):
list1=[]
for i in range(num2-num1-1):
num1 = num1+1
list1.append(num1)
return list1
print(number_range(2,8))
[3, 4, 5, 6, 7]
В любом случае, пока я писал этот ответ, Shazers предоставил реализацию используя стандартный синтаксис, и я настоятельно рекомендую его решение над моим. Используйте эту функцию, только если вы использовали range () с вычитанием по определенной причине, которую вы не комментировали.