python读文件逐行处理的示例代码分享

yipeiwu_com7年前Python基础

复制代码 代码如下:

import os ## for os.path.isfile()

def dealline(line) :
    print(line) ## 针对line我可以做很多事情

def getfilename() :
    return input('Please input file name(input exit() for exit):').strip()

class more : ## MORE功能
    linenum = 0
    size = 10
    def work(self) :
        if self.linenum >= self.size :
            if input('--MORE--').strip().lower() == 'exit()' :
                return False
            self.linenum = 0
        else :
            self.linenum += 1
        return True

while True :
    try :
        filename = getfilename()

        if filename.lower() == 'exit()' : ## 退出
            break

        if os.path.isfile(filename) : ## 判断文件是否存在

            f = open(filename)
            try :
                lines = f.readlines()

                m = more()
                for line in lines:
                    if False == m.work() :
                        break
                    dealline(line)

                ## input()
            finally :
                f.close()

        else :
            print('File does not exists.')
            ##input()
    except :
        print('Input Error!')



还可以用

复制代码 代码如下:

with open(filename) as fh:
    for line in fh:
        yield line


输出每一行

相关文章

Python自动重试HTTP连接装饰器

有时候我们要去别的接口取数据,可能因为网络原因偶尔失败,为了能自动重试,写了这么一个装饰器。 这个是python2.7x 的版本,python3.x可以用 nonlocal 来重写。...

利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统

利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统

基于python opencv人脸识别的签到系统前言先看下效果实现的功能开始准备页面的构建功能实现代码部分总结 前言 一个基于opencv人脸识别和TensorFlow进行模型训练的人脸...

python将三维数组展开成二维数组的实现

以前写过一篇:python实现把两个二维array叠加成三维array示例 这篇文章尝试用“曲线救国”的方法来解决二维数组叠加成三维数组的问题。 但天道有轮回,苍天绕过谁。好不容易把数组...

破解安装Pycharm的方法

破解安装Pycharm的方法

先准备好安装软件。从官网下载最新的pycharm版本:https://www.jetbrains.com/pycharm/download/download-thanks.html?pl...

浅谈python字符串方法的简单使用

学习python字符串方法的使用,对书中列举的每种方法都做一个试用,将结果记录,方便以后查询。 (1) s.capitalize() ;功能:返回字符串的的副本,并将首字母大写。使用如下...