有一个关于Python判断素数的题的变形,求解答了

他要去判断int还有数字是否小于等于零,所以确实不会了,希望哪位大神有时间可以解答一下,谢谢,谢谢,谢谢
输入-个正整数,判断其是否为素数(只能被1和其本身整除的正整数)。如果用户输入合法的正整数(int类型),则判断该数是否为素数,是输出'Yes' ,不是输出'No';如果用户输入小于等于0的数,则输出"input error”。

[输入形式]输入-个正整数,回车

[输出形式]是素数输出'Yes'(大写字母),不是素数输出'No'(大写字母), 输入负数时,输出“input error'

[样例输入] 7

[样例输出] Yes

[样例输入] 4

[样例输出] No

[样例输入] -9

[样例输出] input error

n=int(input())
if n<=0:
    print('input error')
else:
    f=1
    for i in range(2,n):
        if n%i==0:
            f=0
            break
    if f==1:
        print('Yes')
    else:
        print('No')

觉得有用的话采纳一下哈


def isPrime(n):
    for i in range(2, int(pow(n, 0.5)) + 1):
        if n % i == 0:
            return False
    return True

data = int(input(">>>"))

res = 'input error' if data <= 0 else 'YES' if isPrime(data) else 'NO'
print(res)