python讀取一個文件的每一行判斷是否為素數,並把結果寫到另一個文件中


剛剛學習python的菜鳥,這道題包括:文件的讀寫,python的參數調用,異常的使用,函數的使用

創建一個文本文件inti_prime.txt

執行命令:python Prime.py init_prime.txt result_prime.txt

會生成一個result_prime.txt文件

 1 #-*- coding:UTF-8 -*-
 2 #讀取一個文件的每一行,每一行為一個數字
 3 #判斷數字是不是素數
 4 #並打印結果到另外一個文件
 5 #輸入文件名和輸出文件名用參數的形式
 6 import sys
 7 import math
 8 #輸入文件
 9 str1=sys.argv[1]
10 #輸出文件
11 str2=sys.argv[2]
12 #打開文件
13 try:
14     file_object=open(str1,"r+")
15 except IOError:
16     print "找不到這個文件".decode('utf8').encode('gbk')
17 else:
18     file_result=open(str2,"w+")
19 #判斷是否為素數
20     def IsPrime(number):
21         if number<2:
22             return False
23         else:
24             for i in range(2,int(math.ceil(math.sqrt(number))+1)):
25                 if number==2:
26                     return True
27                 else:
28                     if number%i==0:
29                         return False
30                     else:
31                         continue
32             return True
33 #讀取文件
34     for line in file_object:
35         line = line.strip()
36         if IsPrime(int(line)):
37             file_result.write(line+" is a Prime"+"\n")
38         else:
39             continue
40     file_object.close()
41     file_result.close()
42 
43 
44             

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM