国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python打印文件的前幾行或最后幾行教程

2020-02-15 21:13:07
字體:
供稿:網(wǎng)友

寫一個類似linux head的小工具,在window下用。

head.py 

# -*- coding: UTF-8 -*-#!/usr/bin/python# by Jakcing 2019.02.17# print first n lines or last n lines in big file   import sysimport getoptimport linecache  VERSION="1.1" def get_line_count(filename): line_count = 0 file = open(filename,'r+', encoding='utf-8') while True: buffer = file.read(8192 * 1024 ) if not buffer:  break line_count += buffer.count('/n') file.close() return line_count def read_head_line(flist, line_num): for file_name in flist: print("===%s===" % file_name) f = open(file_name, 'r', encoding='utf-8') if(f):  for i in range(line_num):  print(f.readline(), end='')   def read_last_line(flist, line_num):  for file_name in flist:  linecache.clearcache() line_count = get_line_count(file_name) print('===%s=== line count total: %d' % (file_name, line_count)) line_count = line_count - line_num +1 print('===%s=== line %d to end' % (file_name, line_count))   for i in range(line_num):  last_line = linecache.getline(file_name, line_count) #從第line_count行讀起  print('line[%d]:%s' % (line_count, last_line), end='')  line_count += 1   try: opts, args = getopt.getopt(sys.argv[1:], "hvn:t:", ["help", "output=", "numline=", "tail=", "version"])except getopt.GetoptError:  print("argv error,please input") for cmd, arg in opts: if cmd in ("-h", "--help"): print("usage: head.py -n number filename /nor head.py -t number filename") sys.exit() elif cmd in ("-n", "--numline"): #打印文件開頭的line_num行 line_num=int(arg) file_names=args[:] read_head_line(file_names, line_num) elif cmd in ("-t", "--tail"): #打印文件結(jié)尾的line_num行 line_num=int(arg) file_names=args[:] read_last_line(file_names, line_num)  elif cmd in ("-v", "--version"): print("%s %s" % (sys.argv[0], VERSION)) sys.exit()

以上這篇python打印文件的前幾行或最后幾行教程就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 峨边| 泰州市| 洮南市| 新和县| 静宁县| 柳林县| 景洪市| 合川市| 垦利县| 民勤县| 静安区| 鄂州市| 龙川县| 东方市| 理塘县| 禄丰县| 泰宁县| 双辽市| 平顶山市| 民权县| 江西省| 越西县| 崇义县| 若尔盖县| 巴彦淖尔市| 新宁县| 阿拉善左旗| 万安县| 鄱阳县| 扬中市| 双城市| 于都县| 滁州市| 襄汾县| 通化县| 大方县| 江都市| 楚雄市| 天台县| 都匀市| 体育|