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             
时间: 2024-08-05 02:56:50

python读取一个文件的每一行判断是否为素数,并把结果写到另一个文件中的相关文章

python 读取一个目录下的所有目录和文件

觉着没事,应该学点东西.找到以前看过的python,试着做了个读取文件的程序.不管效果怎么,总算成功了. #!/usr/bin/python # -*- coding:utf8 -*- import os allFileNum = 0 def printPath(level, path): global allFileNum ''''' 打印一个目录下的所有文件夹和文件 ''' # 所有文件夹,第一个字段是次目录的级别 dirList = [] # 所有文件 fileList = [] # 返回

Python读取文件的最后一行(非空行)

利用Python读取文件(针对大文件和小文件两种)的首行(第一行)和末行(最后一行).脚本借鉴了前人的两种处理思路(在下面的脚本中有注释说明引用出处),并修正了原先两种处理方法中如果文件末尾含有多个空行而返回空行的问题. 脚本内容可以从GitHub上获取: https://github.com/DingGuodong/LinuxBashShellScriptForOps/blob/master/functions/file/getFileLastLine.py 脚本内容如下: #!/usr/bi

python 文件单行循环读取的坑(一个程序中,文件默认只能按行循环读取一次,即使写到另一个循环里,它也只读取一次)

本来写了一个程序,想获取a文件中有,但是b文件中没有的行: 想到的方法是:1.一行一行提取a文件中数据,然后用a文件中的每一行与b文件中的每一行比较, 2.如果找到相同行就继续查找a中的下一行,如果找不到,就把这行保存起来,就是要找的一行 程序写成如下: f = open("file/a.txt","r",newline='\n') ff= open ("file/aa.txt","r",newline='\n') new=o

Python读取文件

1.在Python中如何操作文件 2.如何读取大文件 文件内建函数:open(file_name,access_mode='r',buffering=-1),file() 文件访问模式:     r:以读方式打开(默认)     w:写     a:追加     b:以二进制方式打开     r+ w+ a+:读写方式打开     rb:以二进制读模式打开     wb:以二进制写模式打开     ab:以二进制追加模式打开 输入,输出 read() 读取给定数目个字节 readline() 读

Python读取中文txt文件错误:UnicodeEncodeError: &#39;gbk&#39; codec can&#39;t encode character

1 with open(file,'r') as f: 2 line=f.readline() 3 i=1 4 while line: 5 line=line.decode('utf-8') 6 print str(i)+": "+line7 line=f.readline() 8 i=i+1 用以上代码读取一个包含中文的txt文件时,在正确地读取并打印了六百多行之后,print str(i)+": "+line这一行报错: UnicodeEncodeError:

python读取txt、csv和excel文件

一.python读取txt文件:(思路:先打开文件,读取文件,最后用for循环输出内容) fp = open('test.txt','r') lines = fp.readlines() fp.close() for line in lines: username = line.split(',')[0] password = line.split(',')[1] 注:第一句是以只读方式打开文本文件:第二个是读取所有行的数据(read:读取整个文件:readline:读取一行数据):最后一定要关

python 读取文件 并实现文件相关操作最后导出excel

今天做了一个使用python来提取日志内容,并导出excel的小脚本,代码写的不好,新手勿喷,下面进行一下总结. 需求如下: 1.读取文件行数,并作出excel表 2.读取文件中第7个字段,累加求和,求平均数.并找出其中最大的.做excel表. 3.找出文件中特定字符出现次数,统计,做excel表. 4.自动生成excel名称为实时时间. 读取文件行数第一想法就是 wc -l,虽然python中可以调用shell命令,但毕竟不太好,所以这里用python逐行读取文件并进行累加,算出文件行数...

python读取json文件存sql及codecs读取大文件问题

preface: 最近帮师兄处理json文件,需要读到数据库里面,以备其后续从数据库读取数据.数据是关于yelp网站里面的: https://github.com/Yelp/dataset-examples,http://www.yelp.com/dataset_challenge/. 涉及到一些json和sql的问题,记录下. 一.python sql安装 python 自带轻型数据库sqlite,不过用不了.需要mysql才行,pip安装mysql失败,easy_install安装也失败,这

Python读取SQLite文件数据

近日在做项目时,意外听说有一种SQLite的数据库,相比自己之前使用的SQL Service甚是轻便,在对数据完整性.并发性要求不高的场景下可以尝试! 1.SQLite简介: SQLite是一个进程内的库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它(如安卓系统),它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多