简单的Python打印命令提供不支持的类型错误

时间:2017-08-03 04:39:47

标签: python

不知道为什么但是这个简单的Python代码给了我一个错误:

'''
Created on Aug 2, 2017

@author: Justin
'''

x = int(input("Give me a number, now.....")) 
if x % 2 != 0:
    print(x + " is an odd number!")
else:
    print(x + " is an even number!")

错误在于:

Traceback (most recent call last):

  File "C:\Users\Justin\Desktop\Developer\Eclipse Java Projects\PyDev Tutorial\src\Main\MainPy.py", line 9, in <module>

  print(x + " is an odd number!")

TypeError: unsupported operand type(s) for +: 'int' and 'str'

请帮忙!

谢谢!

5 个答案:

答案 0 :(得分:1)

您需要在打印时将x转换为str

print(str(x) + " is an odd number!")

或者您可以使用formatting

print('{} is an odd number'.format(x))

答案 1 :(得分:0)

您无法向字符串添加整数。但是,您可以在字符串中添加字符串。在添加之前将x转换为字符串:

print(str(x) + " is an odd number!")

答案 2 :(得分:0)

你可以连接 string + string 而不是 string + int

您的代码 x 是int类型,因此您无法直接添加字符串,您必须使用 str 关键字转换为字符串

x = int(input("Give me a number, now.....")) 

if x % 2 != 0:
    print(str(x) + " is an odd number!")
else:
    print(str(x) + " is an even number!")

答案 3 :(得分:0)

你需要将字符串连接成字符串。但是x是一个整数,所以在连接之前你需要把它转换成字符串...在concatenate方法下使用... 试试这个,

print("{} is an odd number!".format(x))

答案 4 :(得分:0)

您需要将int转换为str

你最好在python中使用新的格式:

print("{} is an odd number!".format(x))