python - python上缩进代码块的解释
问题描述
def prime_check(num):
"""
Function to check if a number is prime
"""
for n in range(2,num):
if num%n == 0:
print(num, "is not prime")
break
else:
print(num, "is not prime")
请原谅我,因为我刚开始使用堆栈溢出,我不知道如何在此处显示语法突出显示。但是看上面的代码,当我调用函数并将整数(数字 2)传递给函数时,没有结果,当我传入数字 21 时,它说 21 是质数,这是错误的。但是,当使用 udemy 的代码时,这与我的有点相似(缩进除外),该函数工作正常。我需要帮助了解缩进差异及其工作原理。udemy 代码如下所示。
def is_prime(num):
'''
Naive method of checking for primes.
'''
for n in range(2,num):
if num % n == 0:
print(num,'is not prime')
break
else: # If never mod zero, then prime
print(num,'is prime!')
注意我自己的代码和他们的代码之间的缩进差异。请我需要了解其中的区别。帮助!!!!!!!!!!
解决方案
else
如果for
循环没有中断,就会发生。请参阅文档。
推荐阅读
- c++ - c ++全局配置类不作为参考传递
- xml - 如何在 XSL 中使用 sum 函数
- c++ - 指定的 DSN 包含驱动程序和应用程序 QODBC3 之间的体系结构不匹配:无法连接”
- javascript - Sequelize 中的关联
- python - 将嵌套 JSON 转换为具有特定条件的熊猫数据框
- html - 如何在字符串中插入标签以替换字母并对其进行自定义?
- java - 我应该怎么做才能使“io.micrometer.core.instrument.MeterRegistry”对象自动装配
- rust - 初始化函数在 `lazy_static` 块中被调用两次
- python - ncks:错误收到 3 个文件名;不超过两个
- javascript - 如何将不同的处理程序分配给一个事件侦听器,例如单击 addEventListener。这就是我正在做的事情