linux或Python提取一定范围的行

linux或Python提取一定范围的行,第1张

usage Python

#!/usr/bin/env python

# coding: utf-8

"""

"""

import re

context = """

1 214321 454 4325

2 3214 43214 543

3 432 54325 43543

6 324 34 4324

5 43 324 4324

""" # (行号不连贯,并且有缺失)

rangedefine = """

1 2

3 5

"""

def iter_parser_context(strstream):

    patt = recompile(r"^(P<sno>\d+)\s+(P<content>)")

    for ln in strstream:

        matched = pattmatch(ln)

        if matched:

            yield matchedgroupdict()

def getrangedefine(context):

    datarange = []

    for ln in contextsplitlines():

        datarangeappend(refindall("\d+", ln))

    return filter(None, datarange)

define = getrangedefine(rangedefine)

for data in iter_parser_context(contextsplitlines()):

    if any([minsno <= data["sno"] <= maxsno for (minsno, maxsno) in define ]):

        print "%(sno)s %(content)s" % data

总结了一下有六种方法:现在有一个a文件,共有55行第一种:# awk '{print NR}' a|tail -n1第二种: # awk 'END{print NR}' a第三种: # grep -n "" a|awk -F: '{print '}|tail -n1第四种:# sed -n '$=' a第五种 # wc -l a|awk '{print }'第六种 #cat a |wc -l用Linux的wc命令在Linux下用wc进行计数。返回文件的行数、字数、字节数等。看个例子:wc wc1txt3 5 16 wc1txt输出信息依次是:行数 字数 字节数 文件名称。再具体点,单个统计。wc -m filename:显示一个文件的字符数wc -l filename:显示一个文件的行数wc -L filename:显示一个文件中的最长行的长度wc -w filename:显示一个文件的字数需要留意的:貌似wc统计的行算是用换行符来确定的。就是说最后一行要有换行符,最后wc的行数才是正确的,否则将会少一行。为了说明这个问题,看一个perl的测试:

以上就是关于linux或Python提取一定范围的行全部的内容,包括:linux或Python提取一定范围的行、Linux bash 怎样取得文件行数、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9511734.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存