我正在学习使用Python编程。当前,我正在尝试编写一个简单的函数,该函数将检查用户输入的数字是否为质数。函数的以下部分抛出“无效语法”符号:
else:
For x in range(1,b**(1/2)):
If b%x==0:
print(str(b) + " is not prime")
break
“ b”是在函数中其他位置定义的变量。它是用户提供的小于500的整数。我收到“无效语法”错误,该错误指向代码中“ for x in range ...”部分中的“ x”。我不明白为什么会这样,非常感谢您对此问题的一些见识。
到目前为止,如果有帮助,整个代码如下:
def check_prime():
b = input("Enter an integer less than 500: ")
if type(b)!='int':
print("Please enter an integer")
elif b > 500:
print ("Please choose a smaller number")
else:
For x in range(1,b**(1/2)):
If b%x==0:
print(str(b) + " is not prime")
break
print (str(b)+ " is prime")
我知道该功能将无法完全按照我的预期运行,但是在解决语法错误问题之前,我不知道如何前进。预先感谢您的帮助。
答案 0 :(得分:2)
使用for
和if
代替For
和IF
。另外,如果您跳过缩进,Python会给您一个错误
答案 1 :(得分:1)
“ For”和“ If”应分别为“ for”和“ if”。另外,range需要两个整数,而不是int和float。
b=9
for x in range(1,int(b**(1/2))):
if b%x==0:
print(str(b) + " is not prime")
break