Python中index()和seek()的用法(详解)


Posted in Python onApril 27, 2017

1、index()

一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如:

>>> t=tuple('Allen')
>>> t
('A', 'l', 'l', 'e', 'n')
>>> t.index('a')
Traceback (most recent call last):
 File "<pyshell#2>", line 1, in <module>
  t.index('a')
ValueError: tuple.index(x): x not in tuple
>>> t.index('e')
3
>>> t.index('l')
1

但参数可能会出现很多次,要如何做呢?

index()函数的完整语法是这样的:

str.index(str, beg=0, end=len(string))

str ? 指定检索的字符串
beg ? 开始索引,默认为0。
end ? 结束索引,默认为字符串的长度。

所以我们可以重新设置开始索引来继续寻找,如:

>>> t.index('l',2)
2

因为第一个'l'的出现位置是1,所以我们将开始索引加1继续寻找,果然,在索引为2的位置又找到了'l'。

2、seek()

seek()函数是属于文件操作中的函数,用来移动文件读取指针到指定位置。

语法:

fileObject.seek(offset[, whence])

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

whence:可选,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。

demo.py

#test.txt
#first line
#second line
#third line

f=open('test.txt','r')
print(f.readline())
print(f.readline())
f.seek(0,0)
print(f.readline())
f.seek(1,0)
print(f.readline())

控制台输出:

first line

second line

first line

irst line

[Finished in 0.3s]

readline()函数会读取整行字符串,所以文件读取指针会移动到下一行。

以上这篇Python中index()和seek()的用法(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 字符串格式化代码
Mar 17 Python
利用Python将每日一句定时推送至微信的实现方法
Aug 13 Python
pyqt5 QProgressBar清空进度条的实例
Jun 21 Python
windows 10 设定计划任务自动执行 python 脚本的方法
Sep 11 Python
python 使用shutil复制图片的例子
Dec 13 Python
解决Pytorch自定义层出现多Variable共享内存错误问题
Jun 28 Python
django restframework serializer 增加自定义字段操作
Jul 15 Python
如何使用Django Admin管理后台导入CSV
Nov 06 Python
pandas使用函数批量处理数据(map、apply、applymap)
Nov 27 Python
Python实现王者荣耀自动刷金币的完整步骤
Jan 22 Python
TensorFlow的环境配置与安装方法
Feb 20 Python
Python使用Turtle模块绘制国旗的方法示例
Feb 28 Python
Python中几种导入模块的方式总结
Apr 27 #Python
Python利用matplotlib生成图片背景及图例透明的效果
Apr 27 #Python
python使用matplotlib绘图时图例显示问题的解决
Apr 27 #Python
Python中生成Epoch的方法
Apr 26 #Python
python 网络编程详解及简单实例
Apr 25 #Python
python 全文检索引擎详解
Apr 25 #Python
window下eclipse安装python插件教程
Apr 24 #Python
You might like
PHP学习笔记 (1) 环境配置与代码调试
2011/06/19 PHP
php设计模式 Proxy (代理模式)
2011/06/26 PHP
php 去除html标记--strip_tags与htmlspecialchars的区别详解
2013/06/26 PHP
最新制作ThinkPHP3.2.3完全开发手册
2015/11/23 PHP
PHP插件PHPMailer发送邮件功能
2017/02/28 PHP
求得div 下 img的src地址的js代码
2007/02/28 Javascript
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
2010/09/14 Javascript
js倒计时小程序
2013/11/05 Javascript
js监控IE火狐浏览器关闭、刷新、回退、前进事件
2014/07/23 Javascript
jQuery实现仿新浪微博浮动的消息提示框(可智能定位)
2015/10/10 Javascript
理解JavaScript中worker事件api
2015/12/25 Javascript
AngularJS中处理多个promise的方式
2016/02/02 Javascript
JavaScript必知必会(五) eval 的使用
2016/06/08 Javascript
JS去除空格和换行的正则表达式(推荐)
2016/06/14 Javascript
JS实现动态修改table及合并单元格的方法示例
2017/02/20 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
vue自定义一个v-model的实现代码
2018/06/21 Javascript
vue ssr 指南详读
2018/06/29 Javascript
Angularjs之ngModel中的值验证绑定方法
2018/09/13 Javascript
Vue插件从封装到发布的完整步骤记录
2019/02/28 Javascript
vuex+axios+element-ui实现页面请求loading操作示例
2020/02/02 Javascript
js事件机制----捕获与冒泡机制实例分析
2020/05/22 Javascript
[48:00]EG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/29 DOTA
介绍Python的Django框架中的静态资源管理器django-pipeline
2015/04/25 Python
基于python实现的抓取腾讯视频所有电影的爬虫
2016/04/22 Python
python2 与 python3 实现共存的方法
2018/07/12 Python
详解python如何在django中为用户模型添加自定义权限
2018/10/15 Python
python 读取竖线分隔符的文本方法
2018/12/20 Python
Python内置加密模块用法解析
2019/11/25 Python
Python2和Python3中@abstractmethod使用方法
2020/02/04 Python
Python3 中sorted() 函数的用法
2020/03/24 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
2021/03/04 Python
The Kooples美国官方网站:为情侣提供的法国当代时尚品牌
2019/01/03 全球购物
投资合作意向书范本
2015/05/08 职场文书
同步小康驻村工作简报
2015/07/20 职场文书
青年联谊会致辞
2015/07/31 职场文书