如何输入数字值

时间:2014-07-15 18:14:34

标签: python input

我刚刚开始编码,我正在尝试编写一个简单的程序来添加向量。到目前为止我已经

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=1VectorAy=6VectorBx=3VectorBy=2,则VectorC应为[4,8],而是显示为{{1} }}

3 个答案:

答案 0 :(得分:2)

input始终返回一个字符串对象。如果您希望输入为数字,则需要将其转换为intfloat的数字:

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?"))