我不懂这段代码-Python的执行奇数或偶数

时间:2019-09-10 13:11:52

标签: python

我是一名初学者,正在研究Python。我正在做一些练习来改进我的代码。 我不明白这些代码背后的逻辑。

上面的代码是我的代码(如果它不符合周围的标准,请原谅我。)

这是解决方案,但是我不明白为什么他们把它设置为mod> 0

#input number and print
number = int(input ('Insert number:'))
print(number)
if (number % 2):
 print('Odd')
else:
 print('Even')

num = input("Enter a number: ")
mod = num % 2
if mod > 0:
    print("You picked an odd number.")
else:
    print("You picked an even number.")

我问是否有人向我解释这些代码,以及是否有办法使我的代码更整洁。

2 个答案:

答案 0 :(得分:2)

奇数等于1模2。

在此代码中,mod等于01(因为对模数2表示模)。因此,条件mod>0等效于mod==1,如果您想知道数字是否为奇数,这正是您要寻找的条件。

很明显,因此,如果mod==0,则数字为偶数

答案 1 :(得分:0)

当左数除以右数时,模运算符或%给出余数。

因此10 % 2将是0,因为此划分中没有余数。

10 % 3将是1,因为3变成10 3次,剩余1个。

底部的代码正在检查余数是否大于0,因为当它为0时就没有余数,因此该数字必须为偶数。