关于while循环:简单的倒计时Python

Simple Countdown Python

本问题已经有最佳答案,请猛点这里访问。

我写了这段代码,我在"Python for dummies"一书中找到了这段代码。

1
2
3
4
5
countdown = 10
while countdown:
    print countdown,
    countdown -= 1
print"Blastoff!"

它应该打印10 9 8 7 6 5 4 3 2 1 Blastoff!

当我运行该程序时,我收到错误'打印调用中缺少括号'

在youtube上,我找到了一个与此类似的代码,从0到10000000计数。这个工作正常。

1
2
3
4
5
6
def count(x):
while (x <= 10000000):
    print (x)
    x+=1
count(0)
print ("I hate my job. I quit!")

他们怎么会这么不同? 我需要什么样的基础知识才能理解这一点? 这是不同python版本的问题吗? 'Python for dummies'是一本坏书吗?


这是一个Python 2 vs 3陷阱。 print是2中的关键字,现在它是3中的函数。显然,代码是为2编写的,但是你使用的是3。

只需添加括号并像处理任何其他函数一样处理print


对于Python 3.0和after()是`print?。

更改为print ("Blastoff!")您将不会有任何错误


您正在阅读的书是为python版本2编写的,其中if和while语句不需要括号。 但是,您似乎使用的是python版本3,它要求您在if和while语句中添加paranthesis。 您可以通过在正确位置添加paranthesis来解决此问题,或者下载python版本2(2.7是最常见的版本),这样您就可以使用代码而无需修改它。