编程语言
首页 > 编程语言> > 在python中使用raw_input中的%r

在python中使用raw_input中的%r

作者:互联网

python中使用raw_input中的%r是否可行?

对于背景,我正在研究Zed Shaw的Exercise 12.(很棒的资源!这些课程非常有用,并且节奏很好.)

我正在玩额外的功劳,试图让raw_input重复我输入的内容.我知道我可以用print语句完成同样的事情,但我很好奇我是否可以在raw_input中完成它.

我输入的代码是:

from sys import argv

script, firstname, lastname = argv

age = raw_input("Hello %r, what is your age? ") % firstname

print ("Ahh, Mr. %r, you are %r years old.") % (lastname, age)

我得到的错误是:

Traceback (most recent call last):
  File "ex13a.py", line 5, in <module>
    age = raw_input("Hello %r, what is your age? ") % firstname
TypeError: not all arguments converted during string formatting

提前致谢!

解决方法:

你的行应该阅读

raw_input("Hello %r, what is your age? " % firstname)

代替

raw_input("Hello %r, what is your age? ") % firstname

否则,您不会格式化“Hello%r,…”字符串,而是格式化对raw_input的调用字符串.

标签:python,raw-input
来源: https://codeday.me/bug/20190613/1232269.html