0

我是 Python 新手,也是编程新手。
谁能告诉我如何正确编码以下内容?

name=raw_input("What is your name?  ")
age=raw_input(" How old are you",name) 
4

2 回答 2

2
name = raw_input('What is your name? ')
age = raw_input('How old are you, %s? ' % name)

或者:

name = raw_input('What is your name? ')
age = raw_input('How old are you, {}? '.format(name))

raw_input函数不能接收超过 1 个参数。我们可以通过使用字符串格式化来克服这个问题(有关不同类型格式化的信息,请参见此处此处)。

此外,根据您想要执行的操作,您可能还希望转换age为整数。我们做得到:

age = int(age)

但如果用户输入了其他内容,比如'foobar',那么你会得到一个错误。您可以使用try/except块绕过它,并使用while循环,这样您就可以循环直到获得有效数字。

name = raw_input('What is your name? ')
while True:
    age = raw_input('How old are you, {}? '.format(name))
    try:
        age = int(age)
        break
    except ValueError:
        print 'You entered an invalid age. Please try again.'
于 2013-02-21T09:16:20.767 回答
0

始终使用类型转换。无论如何,下面的代码应该做到这一点:

name = str(raw_input('Enter your name:'))

string1 = 'Enter your age,' + name + ':'

age = int(raw_input(string1))

正如你所看到的,我已经将我想要提示的任何内容存储到一个名为 string1 的字符串中,然后我将它用作 raw_input 的参数。

raw_input 只接受一个参数。所以,你可以这样做。

我为此使用了python 2.7。如果您正在使用

于 2013-02-21T09:22:20.247 回答