%函数返回TypeError

时间:2019-08-03 22:29:37

标签: python-3.x

我正在学习Python,并且正在编写一个小程序来确定有人给出的是偶数还是奇数。根据我的研究,应该使用%函数来完成此操作。

但是,当我尝试以下代码时,它将返回TypeError。

numberA = input('Please enter a number ')

mod = numberA % 2

if numberA > 0:
    print('Odd')
else:
    print('Even')

我希望mod行能够正常工作,但是程序会在活动shell中给出TypeError。

  

TypeError:在字符串格式化期间并非所有参数都已转换

2 个答案:

答案 0 :(得分:1)

input函数返回String而不是整数值。您首先需要使用int将其转换为此类。

numberA = int(input('Please enter a number '))

mod = numberA % 2

if numberA > 0:
    print('Odd')
else:
    print('Even')

答案 1 :(得分:0)

input()的结果是一个字符串,而当%操作的左侧是一个字符串时,则%操作正在执行string formatting。 / p>

您应该先将输入转换为数字,然后使用%作为取模运算符:

numberA = int(input('Please enter a number '))
mod = numberA % 2