无法连接';str';和';int';物体。python
TypeError:无法连接'str'和'int'对象。蟒蛇无法连接';str';和';int';物体。python,python,string,int,Python,String,Int,TypeError:无法连接'str'和'int'对象。蟒蛇 请帮助:)您必须将quantity1(一个字符串)转换为整数,就像您在上一行中对quantitybolt所做的那样 if int(gtin) == barcode[1]: print "You have ordered", item[1] **quantity1 = raw_input("Please select a quantity of 100mm bolts") quantitybolt = int(q
请帮助:)您必须将quantity1(一个字符串)转换为整数,就像您在上一行中对quantitybolt所做的那样
if int(gtin) == barcode[1]:
print "You have ordered", item[1]
**quantity1 = raw_input("Please select a quantity of 100mm bolts")
quantitybolt = int(quantity1)
quantity1 += quantitybolt**
由于您似乎没有在任何地方使用
quantitybolt
,因此可以使用int()
将从raw\u input()返回的值直接转换为整数,如下所示:
quantity1 = int(quantity1) + quantitybolt
现在quantity1
将被设置为表示用户输入的整数,我想这就是您想要的。您可能希望将其包装在try/except
块中以捕获无效输入。问题很明显:
if int(gtin) == barcode[1]:
print "You have ordered", item[1]
quantity1 = int(raw_input("Please select a quantity of 100mm bolts"))
现在,因为我一点也不知道您要实现什么目标,所以我不知道如何解决您的问题。我想您需要将int(quantity1)
添加到另一个变量中。变量quantity1
是由raw\u input
返回的字符串,将其整数添加到自身是没有意义的。它可以在没有quantitybolt
的情况下表达……你是什么意思@布鲁诺德修利尔,就像你刚才做的那样?但这仍然会导致一个类型错误:p这里没有“我在上面所做的方式”-我回答中的代码片段只是OP注释的代码,用来解释他为什么会出现这个错误。因为我一点也不知道OP到底想做什么,所以在答案中添加任何东西都没有用。wrt/你是什么意思:quantity1=sum(map(int,(quantity1,quantity1))
可以是一个选项,也可以是quantity1=int(quantity1)+int(quantity1)
我听说你是@brunodesthuillers,我只是因为我的代码受到批评而感到伤心,但我明白,从好的角度看待批评总是有用的。谢谢你的意见
quantity1 = raw_input("Please select a quantity of 100mm bolts")
# here quantity1 is a string
quantitybolt = int(quantity1)
# here quantitybolt is an integer - at least if no exception popped
# and now you try to add `quantity1` (which is a string)
# to `quantitybolt` (which is an integer) - hence your error...
quantity1 += quantitybolt