我对这整个编码工具完全陌生,我只是想学习基础知识。目前,我正在尝试创建一个指示输入是否为素数的素数函数。我检查了过去的帖子,没有人像我一样以类似的方式解决问题,所以我没有先例。如果有人能告诉我为什么我的代码没有按预期运行,我真的很感激。
def is_prime(x):
if x==0 or x==1:
return False
for n in range(2,x-1):
if "." not in str(int(x/n)):
return True
else:
return False
我认为我可以创建一个循环来确定x之前的数字是否是因子,如果不是,那么数字将是素数,因为所有输出都包含小数。
答案 0 :(得分:0)
这在性能方面不是一个很好的方法 而且,在Python2中分割两个整数将给你一个整数,所以没有精度点。 在Python3中,你总是得到一个精度点,但如果你把它强制转换为整数,那么你总是会失去它,就像在Python2中一样。
答案 1 :(得分:0)
在您发布关于编程语言基本工作的问题之前,请尝试在文档中找到答案。
据我所知,int
返回由数字或字符串x构造的整数对象,如果没有给出参数,则返回0。如果x是数字,则它可以是普通整数,长整数或浮点数。 如果x是浮点数,则转换将截断为零。如果参数超出整数范围,则函数将返回一个长对象。