我刚刚开始编码,我正在尝试编写一个简单的程序来添加向量。到目前为止我已经
了VectorAx= input("What is the x component of Vector A?")
VectorAy= input("What is the y component of Vector A?")
VectorBx= input("What is the x component of Vector B?")
VectorBy= input("What is the y component of Vector B?")
VectorC= "[%s,%s]" % (VectorAx + VectorBx, VectorAy+VectorBy)
print (VectorC)
当我运行脚本时,一切正常,但输入不会被视为数字。
例如,如果VectorAx=1
,VectorAy=6
,VectorBx=3
和VectorBy=2
,则VectorC
应为[4,8]
,而是显示为{{1} }}
答案 0 :(得分:2)
input
始终返回一个字符串对象。如果您希望输入为数字,则需要将其转换为int
或float
的数字:
VectorAx= int(input("What is the x component of Vector A?"))
VectorAy= int(input("What is the y component of Vector A?"))
VectorBx= int(input("What is the x component of Vector B?"))
VectorBy= int(input("What is the y component of Vector B?"))
演示:
>>> inp1 = int(input(":"))
:1
>>> inp2 = int(input(":"))
:2
>>> inp1 + inp2
3
>>>
答案 1 :(得分:1)
将你的向量转换为浮点数(如果你计划有小数)或整数(如果它们总是简单的整数)然后添加。
现在他们被当作弦乐。
因此"1"+"3" == "13"
而int("1") + int("3") == 4
因此:
VectorAx= int(input("What is the x component of Vector A?"))
VectorAy= int(input("What is the y component of Vector A?"))
VectorBx= int(input("What is the x component of Vector B?"))
VectorBy= int(input("What is the y component of Vector B?"))
VectorC= "[%s,%s]" % (VectorAx + VectorBx, VectorAy+VectorBy)
或者你可以简单地在这里施展:
VectorC= "[%s,%s]" % (int(VectorAx) + int(VectorBx), int(VectorAy)+ int(VectorBy))
答案 2 :(得分:1)
您希望使用内置的int()功能。
根据documentation,此函数将"将数字或字符串x转换为整数,或者如果没有给出参数则返回0."
这会将传递给它的输入转换为整数。
因此,生成的代码应为:
VectorAx = int(input("What is the x component of Vector A?"))
VectorAy = int(input("What is the y component of Vector A?"))
VectorBx = int(input("What is the x component of Vector B?"))
VectorBy = int(input("What is the y component of Vector B?"))