【问题标题】:How to add raw input values in Python? [closed]如何在 Python 中添加原始输入值? [关闭]
【发布时间】:2014-04-13 14:54:26
【问题描述】:

我正在尝试将 2 个原始输入值加在一起。代码如下:

def number_of_limbs(legs, arms, limbs):
    print "You have %s legs O.o" % legs
    print "You also have %s arms o.O" % arms
    print "You have %r limbs!! O.O" % limbs

legs = int(raw_input("How many legs do you have? "))
arms = int(raw_input("And how many arms do you have? ")
limbs = legs + arms

number_of_limbs(legs, arms, limbs)

它应该问有多少条腿,多少条手臂,然后将它们加在一起。然后告诉你怎么做 总共有许多肢体。我正在学习 Python 的第 19 课,所以这就是我在顶部做“def”的原因。我意识到有更简单的方法可以做同样的事情,但我正在努力掌握这个特定事物的概念。

当我运行它时,它显示我有 2 条手臂、2 条腿和 22 条肢体。我如何让它添加腿和手臂,而不仅仅是将两个数字推到一起?

现在只是说

 File "ex1.py", line 8
    limb = legs + arms
       ^
SyntaxError: invalid syntax

【问题讨论】:

  • 没错。 “2”+“2”=“22”。 :)

标签: python input add


【解决方案1】:

将它们转换为整数:

legs = int(raw_input("How many legs do you have? "))
arms = int(raw_input("And how many arms do you have? "))

目前它们是字符串,这是raw_input.的默认数据类型

>>> example = raw_input()
2
>>> type(example)
<class 'str'>

当你把两个字符串加在一起时(你有'2''2'),Python 只是将它们连接成一个字符串。 (所以在这种情况下,它将导致'22'

>>> '2' + '2'
'22'

它现在应该给出正确的结果。

固定版本功能的最小示例:

>>> legs = int(raw_input())
2
>>> arms = int(raw_input())
2
>>> limbs = legs + arms
>>> limbs
4

您现在可以毫无问题地将它传递给函数。

【讨论】:

    【解决方案2】:

    您必须将它们转换为整数:

    legs = int(raw_input("How many legs do you have? "))
    arms = int(raw_input("And how many arms do you have? "))
    

    示例

    >>> number_of_limbs(legs, arms, limbs)
    You have 2 legs O.o
    You also have 2 arms o.O
    You have 4 limbs!! O.O
    

    这是因为您添加了strings,而当您添加string+string 时,它只是将两个字符串连接在一起。这是因为raw_input的默认类型是str

    >>> '2'+'2'
    '22'
    >>> int('2')+int('2')
    4
    

    【讨论】:

    • 我将它们更改为整数,但现在它说:SyntaxError: invalid syntax with a little arrow pointing to the "s" after "limbs" on line 8. 去掉 "s" 就可以了指向“b”。
    • @user3529201,你能用修改后的代码更新你的问题吗?
    • 对不起,关于那个!刚刚做了哦,我现在明白你的意思了!一秒
    • @user3529201,您的第二个 raw_input。你忘了第二个结束)
    • 非常感谢!它现在可以工作了:) 很抱歉问我真的不懂编程,这就是我学习的原因!是的,我会接受的!
    猜你喜欢
    • 2013-02-25
    • 2019-11-10
    • 2013-10-12
    • 2016-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    相关资源
    最近更新 更多