我有一个奇怪的问题。我应该输入一个输入的数字,如果它甚至将它除去,直到它是奇数。但。代码在函数内部和while循环中工作,但是当我尝试返回该值时它不起作用。它只是返回输入的值。
参考代码:
num = int(input("Enter a number."))
def makeodd(num):
while num % 2 == 0:
num = num / 2
print(num)
return num
makeodd(num)
print(num)
我很抱歉这有点基础。我正在寻找更多的解释,然后是一个真正的解决方案。虽然解决方案会很好。这是python 3.4供参考。我环顾四周但实际上找不到任何类似的东西。
答案 0 :(得分:1)
将makeodd(num)
更改为:
num = makeodd(num)
将返回值放入num
。
您也可以直接在print语句中使用返回值:
print(makeodd(num))