1 seek()

1.1 概述

file.seek()用于将文件游标移动到文件的任意位置,便于对文件的当前位置(增、删、改、查)操作

1.2 语法

fileObject.seek(offset[, whence])

offset -- 开始的偏移量,也就是代表需要移动偏移的字节数,

  大于0的数表示向文件尾方向移动的字节数

  小于0的数表示向文件头方向移动的字节数

whence:可选,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;

  0代表从文件开头开始算起,

  1代表从当前位置开始算起,

  2代表从文件末尾算起。

该函数没有返回值

1.3 示例

首先建立一个 seek_read.txt 文件,内容如下

ABCDEabcde1234567890

读写程序

f = open("read_seek.txt", 'rb')

f.seek(10)  # 重新定位读写光标
b = f.read(10)  # b'1234567890'
print(b)

f.seek(-5, 2)  # 重新定位读写光标
b = f.read(5)   #  b'67890'
print(b)

f.seek(2, 0)  # 重新定义读写光标
b = f.read(5)   # b'CDEab'
print(b)

f.close()

重新定义光标可以不受限制地将光标移动到任意位置并进行读写操作。


2 tell()

2.1 概述

tell() 方法返回文件的当前位置,即文件指针当前位置。

2.2 语法

fileObject.tell()

无参数

返回值:返回文件的当前位置

2.3 示例

依然是read_seek.txt文件,内容 ABCDEabcde1234567890

f = open("read_seek.txt", 'rb')

b = f.read(5)
print("b = ", b)    # b =  b'ABCDE'
print("当前位置是:", f.tell())  # 当前位置是: 5

f.read(5)

print("当前位置是:", f.tell())  # 当前位置是: 10

f.close()

Python学习笔记015——文件file的常规操作seek()及tell()的更多相关文章

  1. Python学习笔记015——文件file的常规操作之一(文本文件)

    1 什么是文件 文件是用于数据存储的单位 文件通常用来长期保存数据 读写文件是最常见的I/O操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件的功能都是由操作系统提供的,一般而言,操 ...

  2. Python学习笔记015——文件file的常规操作(二进制文件)

    有时候诸如图片.音乐等信息不是以文本的形式存储的,而是二进制文件格式存储的. 有时候很多信息不是以文本文件的形式存储的 很多时候,都需要用到二进制读取文件.毕竟很多信息不是以文本的形式存储.例如:图片 ...

  3. Python学习笔记015——文件file的常规操作之四(输入重定向)

    windows命令提示符(cmd.exe)和Linux Shell(bash等)均可通过">"或”>>“将输出重定向.其中, ">"表示 ...

  4. Python学习笔记015——文件file的常规操作之三(标准输入输出文件)

    1 标准输入输出文件 在Python中,模块sys中含有标准的输入输出文件 sys.stdin     标准输入方法(一般是键盘) sys.stdout   标准输出方法(到显示器的缓冲输出) sys ...

  5. [Python学习笔记]组织文件

    shutil 模块 shutil 模块可以让我们很方便的在Python程序中复制.移动.改名和删除文件. 复制文件和文件夹 使用shutil.copy()来复制文件,该函数含两个参数,均为字符串格式的 ...

  6. Python学习笔记之文件处理

    1.打开和关闭 要打开文件可以使用函数 open(),它位于自动导入模块 io 中.函数将文件名作为唯一不可缺少的函数,并返回一个文件对象.它还有一个名叫 mode 的参数,用于指定文件模式,其可取值 ...

  7. python学习笔记(11):文件的访问与函数式编程

    一.文本文件读写的三种方法 1.直接读入 file1 = open('E:/hello/hello.txt') file2 = open('output.txt','w') #w是可写的文件 whil ...

  8. python学习笔记(7)文件的访问与函数式编程

    一.文件读写的3中方法 1.直接读入 fiel1=open('test.txt') file2=open('output.txt') while True: line=file1.readLine() ...

  9. python学习笔记之——文件I/O

    1.print打印到屏幕 print "打印到屏幕" 2.读取读取键盘输入 (1)raw_input函数 raw_input([prompt]) 函数从标准输入读取一个行,并返回一 ...

随机推荐

  1. How To Open An URL In Android’s Web Browser

    How To Open An URL In Android’s Web Browser 以下核心代码片断,将展现使用“android.content.Intent” 打开一个指定的 URL. butt ...

  2. Convert Sorted Array to Binary Search Tree leetcode java

    题目: Given an array where elements are sorted in ascending order, convert it to a height balanced BST ...

  3. RV 多样式 MultiType 聊天界面 消息类型 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  4. 【翻译自mos文章】CRS显示 正在执行的db instance 是offline状态

    CRS显示 正在执行的db instance 是offline状态 转自: CRS shows Running Instance Status as OFFLINE (Doc ID 1673397.1 ...

  5. Android程序apk反编译破解方法

    简短不割了,我们直接奔主题吧. 把apktool-install-windows-r05-ibot文件里的两个文件剪切到apktool1.5.1目录. 新建一个文件夹把需要破解的apk应用程序放进去. ...

  6. 【java】jvm查看当前虚拟机堆大小限制

    #############################################################jinfo -flag MaxHeapSize 6461#linux: jav ...

  7. 自适应图片宽度的jQuery焦点幻灯轮播代码

    自适应图片宽度的jQuery焦点幻灯轮播代码 注意要1.7.2版本的jq才支持点击后显示点击的图片,不然就是一直顺序播放 演示   XML/HTML Code <div id="sli ...

  8. linux用户管理中两个重要的“父子”配置文件

    在Linux中主要通过用户配置文件来查看和修改用户信息,因此下面我们将介绍两个重要的用户配置文件,让你能够更好的hold住你的用户. 一:父文件/etc/passwd 1.查看配置文件/etc/pas ...

  9. VS2008:Failed to return new Code Element

    VS2008添加自动化类,报错:   [解决方法1] This can be fixed by installing SP1. Please see  https://connect.microsof ...

  10. win10 右键发送到 目录

    win10 右键发送到 目录 C:\Users\llskj\AppData\Roaming\Microsoft\Windows\SendTo C:\Users\llskj\AppData\Roamin ...