这是条件。
编写一个奇怪的Python函数,它接受一个数字,当数字为奇数时返回True,否则返回False。
条件是x:int或float。
并返回:如果x为奇数则为真,否则为Falae
我的代码是
def odd(x):
while x % 2 != 0:
return (x % 2 == 1)
如果奇数(62)代码有效,但奇数(62)输出为无。我怎样才能纠正错误答案?
请帮助我。
答案 0 :(得分:3)
如果数字不是奇数,你的函数不会返回任何内容。你根本不需要一个while循环:
>>> def odd(x):
... return x % 2 != 0
...
>>> odd(62)
False
>>> odd(63)
True
另请参阅检查数字是否为奇数的其他方法:
答案 1 :(得分:0)
您不想使用while
循环,简单的if
会执行此操作。你得到none的原因是因为while
循环没有在“even”条件下运行所以没有返回。
更简单的写作方式是返回条件本身:
def odd(x):
return x % 2 == 1
答案 2 :(得分:0)
while循环搞砸了。
def odd(x):
return x % 2 == 1
答案 3 :(得分:0)
return (x % 2 != 0)
这将返回一个布尔值;如果number为奇数,则评估为True,否则为False。
答案 4 :(得分:-2)
def奇数(x): ''' x:整数 返回:如果x为奇数,则返回True,否则返回False。 ''' 而x%2!= 0: 返回True 其他: 返回False