python - Python 中的简单 "if"语句

标签 python if-statement

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

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

上面代码的结果是它只打印一次“this works”。我希望将 1 添加到 x 直到 x 达到 9 并且该语句不再为真。

有人可以帮我吗?

最佳答案

我认为您要求的是 while 语句。试试这个:

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

print "this doesn't work"

if 语句不循环。你可以从英文的意义上来想:

  • “如果某事为真,则做其他事情,做不同的事情”- 在此声明中没有暗示多次做某事。
  • “当某件事是真的时,就去做吧。” - 这里的“while”表示某事可能会发生多次。

其他方法:

如果您要做的只是循环遍历值 x 0-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

基于 Adam 的解决方案。通常不用于可以轻松计算出结束条件的事情,但在结束条件事先不是很明显的情况下很有用。目前无法想到此用例适用的任何具体示例。它替代了执行 dummy_var = Truewhile dummy_var: 然后在您想要转储时设置 dummy_var = False

关于python - Python 中的简单 "if"语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35586329/

相关文章:

python - 如何最好地输入返回命名元组类型的 python 函数

python - 通过使用多线程/内核提高性能

javascript - 简化检查 "null or empty"以查找 IF 语句中的多个变量

if-statement - Clojure:if 中的多个任务

if-statement - golang 中的 if else 语句

Python:elif 还是 new if?

python - Flutter 与 Python Django RESTFUL API

python - 机器学习防止过拟合这是作弊吗?

javascript - Python - selenium - AngularJS 下拉菜单,如何点击它们?

java - 为什么在尝试求 1000 中 3 和 5 的所有倍数之和时这不起作用?