python中的简单“if”语句

rks48beu  于 2021-08-25  发布在  Java
关注(0)|答案(3)|浏览(233)

我很难让这个简单的if语句起作用。我正在尝试使用“if”语句将字符串打印一定次数

x = 0
if x < 9:
    print "this works"
    x = x + 1
else:
    print "this doesn't work"

上面代码的结果是,它只打印一次“ThisWorks”。我希望将1添加到x,直到x达到9,并且该语句不再为真。
有人能帮我吗?

hmmo2u0o

hmmo2u0o1#

我想你要的是一份简短的声明。试试这个:

x = 0
while x < 9:
    print "this works"
    x = x + 1

print "this doesn't work"

if语句不循环。你可以从英语的Angular 来思考:
“如果某件事是真的,那么做其他的事,做不同的事”——在这句话中没有暗示多次做某事。
“当某些事情是真的时,做一些事情。”-这里的“while”表示某些事情可能会发生多次。
其他方法:
如果您所要做的就是通过值为x0-9的对象进行循环,那么for循环将很好地工作:

for x in range(9):
    print "this works"
print "this doesn't work"

在这种情况下 range(9) 可以被替换为 range(start_value, stop_value+1) 更多的泛化。这是一种更典型的方法,我建议这样做,只是因为它听起来最像你所想的,如果你愿意的话。
另一种方式:

x = 0
while True:
    if x < 9:
        print "this works"
        x = x + 1
    else:
        print "this doesn't work"
        break

基于亚当的解决方案。通常不用于可以轻松计算出最终条件的情况,但在最终条件事先不是非常明显的情况下可能有用。目前,我想不出这个用例适用的具体例子。这是对工作的替代 dummy_var = True , while dummy_var: 然后设置 dummy_var = False 当你想倒掉的时候。

5jvtdoz2

5jvtdoz22#

像“if”这样的控制语句可以用于决策,并且该条件下的语句只运行一次。相反,您可以使用while循环来实现此目的。

irlmq6kh

irlmq6kh3#

如果希望重复某些内容,还需要包含一个循环。最简单的两种方法是使用for或while循环。

for i in range(0,9):
 print "this works"

x = 0
while(x < 9):
 print "this works"
 x = x + 1

相关问题