Python中求素数的问题

Python求素数的时候遇到了问题,看了很多遍代码也没找到错在哪里,希望有人能够解答疑惑

img

import math

def is_prime(num):
    if num <= 1:
        return False
    elif num == 2:
        return True
    elif num % 2 == 0:
        return False
    else:
        for i in range(3, int(math.sqrt(num))+1, 2):
            if num % i == 0:
                return False
        return True

n = int(input("请输入一个正整数:"))
if is_prime(n):
    print(f"{n}是素数")
else:
    print(f"{n}不是素数")

for j 是做什么用的?
我最近有篇文章有素数的,算法和你的差不多,有空交流一下:https://blog.csdn.net/jerbo/article/details/130556635

代码截图中第二行
if n<2 后面的符号写成了中文的冒号