赞
踩
- list=[]
- flag=True
- for i in range(2,100):
- for j in range(2,i):
- if i%j==0:
- flag=False
- break
- else:
- flag=True
- if flag==True:
- list.append(i)
- # ','.join(list)
- print(list)
1.首先写定义一个空列表跟一个标志是否质数的变量,判断是否是质数的标志,默认为True
2.定义两重循环,第一重循环i从大于1开始,求100以内的可以写101(以后如果求n以内的可以设置为n+1)
3.第二重循环从大于1开始,直到i,不包括i
4.判断如果i%j==0,说明除了1个他本身还有其他可以整除的,说明不是质数,直接将质数标志置为False,同时第二层循环终止
5.为避免说结束循环的时候,标志质数的变量值没有变,所以,要有一层else的判断
6.如果说第二层循环结束了,还是没有找到能被1跟他本身整除的数,那么这个数就是质数,把这个值加入到空列表中,最后返回这个列表就行了
还有其他方法,也贴一下
- list=[]
- for i in range(2,101):
- flag=True
- for j in range(2,i):
- if i%j==0:
- flag=False
- break
- if flag:
- list.append(str(i))
- # ','.join(list)
- print(list)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。