def is_prime(num):
if num<=1:
return False
for i in range(2,num):
if num % i == 0:
return False
return True
解釋:
1.
for i in range(2, number):
if number % i == 0:
從 2 到 number ,一個一個拿來除 number。只要找到「任何一個」可以整除,也就是餘數等於 0,就不是質數。
不會除到自己
因為range(2, number) 不包含 number 本身。
例如
number = 7
那:range(2, 7)
實際上是:2, 3, 4, 5, 6
這3個return位子都不一樣
def is_prime(num):
├─ if num <= 1:
│ └─ return False
│
├─ for i in range(...):
│ └─ if num % i == 0:
│ └─ return False
│
└─ return True
第一個return--第一個return
第二個return--是在 for 裡面,找到任何一個可以整除的數,就直接結束。
第三個return--它跟 for 是同一層,不在 for 裡面,前面的檢查全部都沒有 return False,最後才回傳 True