我正在做旧的99瓶歌并尝试使用While循环,以帮助我继续更好地学习循环类型.
我想知道为什么我在下面的代码中会得到一个TypeError,而我错过了什么参数呢?
这是我的代码:
# Get number of beers
bottles = int(raw_input("How many bottles of beer? "))
# return invalid response
if bottles < 1:
print "That's not a good number"
if bottles == 1:
s1 = "bottle"
s2 = "bottles"
elif bottles == 2:
s1 = "bottles"
s2 = "bottles"
# sing verses
while bottles > 0:
print "%d %s of beer on the wall," % bottles, s1
print "%d %s of beer." % bottles, s1
print "You take one down, pass it around,"
print "%d %s of beer on the wall." % (bottles - 1), s2
print
bottles -= 1
Run Code Online (Sandbox Code Playgroud)
这是错误:
Traceback (most recent call last):
File "beer.py", line 47, in <module>
print "%d %s of beer on the wall," % bottles, s1
TypeError: not enough arguments for format string
Run Code Online (Sandbox Code Playgroud)
我尝试在%之后使用"瓶子,s1"周围的括号,但仍然没有帮助.有什么建议?
你必须指定多个参数作为元组,例如
print "%d %s of beer on the wall," % (bottles, s1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10724 次 |
| 最近记录: |