python 生成器按指定大小读取文件

#!/usr/bin/env python

import os
import sys

def read_file(fpath):
  Block_Size = 1024
  with open(fpath,"r") as f:
    while True:
      block = f.read(Block_Size)
      if block:
        yield block
      else:
        return

for i in read_file(sys.argv[1]):
  print(i)

时间: 2024-11-05 09:02:44

python 生成器按指定大小读取文件的相关文章

Linux技巧——用dd生成指定大小的文件

我们在测试或调试的时候,有时候会需要生成某个size的文件,比如在测试存储系统时,需要将磁盘剩余空间减少5G,最简单的办法就是拷贝一个5G的文件过来,但是从哪儿去弄这样大小的文件呢,或许你想到随便找一个文件,不停的拷贝,最后合并,这也不失为一种办法,但是有了dd,你会更容易且更灵活的实现 我们来case by case的介绍dd的用法.先看第一个 生成一个大小为5G的文件,内容不做要求 命令如下 $ dd if=/dev/zero of=tmp.5G bs=1G count=5 解释一下这里用到

Java如何实现按指定行读取文件

最近在开发实战中,遇到了一个这样的技术情景: 把log4j生成的日志文件定时刷进MySQL数据库,比如三个小时刷一次,那么每次刷数据的时候,如何控制文件读取是从上一次文件读取结束的地方开始继续读取的?并且本次要读取到文件结尾处.在网上各种搜索提问后,找到了一个叫RandomAccessFile Java类解决了问题. 先上代码: static int size=1;//主要是为了控制循环的次数,因为是定时刷,每次刷的文件行数可能不一样 static long chars=0;//chars指的是

Windows平台快速的创建一个指定大小的文件

有时,我们需要快速创建一个指定大小的文件,做系统测试使用,我们指定在Linux平台中可以使用如下命令: 创建一个100M的空文件 dd if=/dev/zero of=hello.txt bs=100M count=1 在windows平台同样可以使用下列命令快速创建一个指定大小的文件: fsutil file createnew <filename> <length> C:\>fsutil file createnew用法 : fsutil file createnew &

php使用curl下载指定大小的文件

php中使用基于libcurl的curl函数,可以对目标url发起http请求并获取返回的响应内容.通常的请求方式类似如下的代码: public function callFunction($url, $postData, $method, header='') {     $maxRetryTimes = 3;     $curl = curl_init();     /******初始化请求参数start******/     if(strtoupper($method) !== 'GET'

C++/Php/Python/Shell 程序按行读取文件或者控制台

写程序经常需要用到从文件或者标准输入中按行读取信息,这里汇总一下.方便使用 1. C++ 读取文件 1 #include<stdio.h> 2 #include<string.h> 3 4 int main(){ 5 const char* in_file = "input_file_name"; 6 const char* out_file = "output_file_name"; 7 8 FILE *p_in = fopen(in_fi

Python跳过第一行读取文件内容

Python编程时,经常需要跳过第一行读取文件内容.比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作.相应的Python代码如下: [python] view plain copy input_file = open("C:\\Python34\\test.csv") line_num = 0 for line in islice(input_file, 1, None): line_num += 1 if (line_num

Python学习15:Open读取文件

在之前我已经学习过raw_input和argv了,在这一节的Python学习中,我学习怎样使用脚本打开普通的文本文件,读取它并且关闭文件.关闭文件很重要,关闭是为了释放资源,防止内存被耗尽,导致机器死锁.另外,关闭文件还有一个作用,当写文件时,关闭后将缓冲区中的内容写入文件本身. 下面是一个简单的读取文本文件的脚本.我们可以用两种方式来实现这个功能:第一种是一个带参数的脚本.第二种是不使用参数,直接使用变量来读取文件的脚本. 第一种: 1. # 导入argv模块 2. from sys impo

linux shell 脚本 历史文件清理脚本,按天,按月,清理前N天的历史文件,删除指定大小历史文件,历史文件归档清理

不知道大家那有没有要清理的这个事情.需要清理目录历史文件.可能后续也会有很多其他地方需要清理历史文件,可能会用到. 我这两天空闲写了个脚本,清理比较方便,有要进行清理的大量历史文件的话可以用. 脚本用到的命令只有linux才有,像solaris等就不支持,所以只能在linux上运行.如果是nas存储的话,可以挂载到一个linux主机上跑脚本清理. 另外,脚本查找文件用的是ls,但是ls也有最大文件的限度(大概10w以内),如果每天文件很多,每天都是10w+的,运行可能提示文件数过多无法ls. 还

Linux中定时删除超过指定大小的文件夹

背景: 开发环境总是动不动就没有空间了, 大部分都是debug日志.所以有必要在日志很疯狂的时候,删除不必要的日志. 思路:一. 书写删除日志文件脚本: 定时任务执行.  但是有时候的日志是需要保存用来查询的.所以不完美. 二. 删除脚本保存,定时任务去查询系统空间是否到达临界值,到达则删除,否则不进行任何操作. 日志删除脚本: #!/bin/sh date "+%Y-%m-%d %H:%M:%S" echo ==========before rm========== df -h ec