Python實現(xiàn)輸出某區(qū)間范圍內(nèi)全部素數(shù)的方法
本文實例講述了Python實現(xiàn)輸出某區(qū)間范圍內(nèi)全部素數(shù)的方法。分享給大家供大家參考,具體如下:
# -*- coding: utf-8 -*- # 簡述:區(qū)間范圍101-200 # 要求:判斷這個區(qū)間內(nèi)有多少個素數(shù),并逐一輸出。 def prime(m,n): list1=[] list2=[] for i in range(m,n+1): list1.append(i) for j in range(2,m/2): if i%j==0: list2.append(i) break #print list(set(list1).difference(set(list2)))#list1中有而list2中沒有的 list=[i for i in list1 if i not in list2] list.sort() print list print "該區(qū)間共有素數(shù)%d個"%len(list) if __name__=="__main__": print "腳本之家測試結(jié)果:" m=int(raw_input("請輸入?yún)^(qū)間左端點:")) n=int(raw_input("請輸入?yún)^(qū)間右端點:")) prime(m,n)
運行結(jié)果:
腳本之家測試結(jié)果:
請輸入?yún)^(qū)間左端點:101
請輸入?yún)^(qū)間右端點:200
[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]
該區(qū)間共有素數(shù)21個
運行效果截圖:
總結(jié):
1、#注釋掉的一行也是可以出結(jié)果的,但是list中的元素沒有排序,用了sort()
也是不行,列表補集這部分的知識需要補充
2、判斷非素數(shù)我用了比較笨的方法,先算出素數(shù)再算補集,是因為直接判斷素數(shù)無法運行出結(jié)果,汗
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)學(xué)運算技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
舉例講解Python設(shè)計模式編程中對抽象工廠模式的運用
這篇文章主要介紹了Python設(shè)計模式編程中對抽象工廠模式的運用,文中的例子體現(xiàn)了抽象工廠模式程序的一些設(shè)計優(yōu)化點,需要的朋友可以參考下2016-03-03python實現(xiàn)多進程按序號批量修改文件名的方法示例
這篇文章主要介紹了python實現(xiàn)多進程按序號批量修改文件名的方法,涉及Python多進程與文件相關(guān)操作技巧,需要的朋友可以參考下2019-12-12Python中的復(fù)雜數(shù)據(jù)類型(list、tuple)
這篇文章介紹了Python中的復(fù)雜數(shù)據(jù)類型(list、tuple),文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-05-05