我是一名初学者,正在研究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.")
我问是否有人向我解释这些代码,以及是否有办法使我的代码更整洁。
答案 0 :(得分:2)
奇数等于1模2。
在此代码中,mod
等于0
或1
(因为对模数2
表示模)。因此,条件mod>0
等效于mod==1
,如果您想知道数字是否为奇数,这正是您要寻找的条件。
很明显,因此,如果mod==0
,则数字为偶数
答案 1 :(得分:0)
当左数除以右数时,模运算符或%
给出余数。
因此10 % 2
将是0
,因为此划分中没有余数。
10 % 3
将是1
,因为3变成10 3次,剩余1个。
底部的代码正在检查余数是否大于0,因为当它为0时就没有余数,因此该数字必须为偶数。