python中求素数(质数)的方法:
基本方法:
方法1: [x for x in range(1,a) if not [y for y in range(2,int(x/2)+1) if x%y==0]]
改进方法:
方法2: [x for x in range(1,a) if not [y for y in range(2,round(x**0.5)+1) if x%y==0]]
方法3: [x for x in range(1,a) if not [y for y in range(2,round(math.sqrt(x))+1) if x%y==0]]
方法2最高效,方法3调用math模块,降低了效率,大家有更好的方法,请留言大家讨论

标签: ,

range()函数优化

range()函数,根据起始值,终止值及步进值3个参数在内存中建立列表,当需要一个很大的列表时,这种方式即占内存又费时间

阅读全文»»

标签: