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 08 Python
Python的collections模块中的OrderedDict有序字典
Jul 07 Python
答题辅助python代码实现
Jan 16 Python
浅谈Python中重载isinstance继承关系的问题
May 04 Python
python Web开发你要理解的WSGI &amp; uwsgi详解
Aug 01 Python
django的ORM模型的实现原理
Mar 04 Python
python制作图片缩略图
Apr 30 Python
Form表单及django的form表单的补充
Jul 25 Python
查看已安装tensorflow版本的方法示例
Apr 19 Python
django有哪些好处和优点
Sep 01 Python
python实现简单的学生管理系统
Feb 22 Python
Jupyter Notebook内使用argparse报错的解决方案
Jun 03 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
windows下zendframework项目环境搭建(通过命令行配置)
2012/12/06 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
Javascript remove 自定义数组删除方法
2009/10/20 Javascript
jquery 仿QQ校友的DIV模拟窗口效果源码
2010/03/24 Javascript
extjs ColumnChart设置不同的颜色实现代码
2013/05/17 Javascript
jQuery中after的两种用法实例
2013/07/03 Javascript
jQuery背景插件backstretch使用指南
2015/04/21 Javascript
详细解读AngularJS中的表单验证编程
2015/06/19 Javascript
跟我学习javascript的Date对象
2015/11/19 Javascript
JavaScript模拟数组合并concat
2016/03/06 Javascript
详解使用grunt完成requirejs的合并压缩和js文件的版本控制
2017/03/02 Javascript
对于input 框限定输入值为浮点型的js代码
2017/09/25 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
2018/03/08 Javascript
Vue.js中的computed工作原理
2018/03/22 Javascript
在vue中使用jointjs的方法
2018/03/24 Javascript
Angular5中调用第三方库及jQuery的添加的方法
2018/06/07 jQuery
Angularjs中的$apply及优化使用详解
2018/07/02 Javascript
通过说明与示例了解js五种设计模式
2019/06/17 Javascript
在 Vue 中编写 SVG 图标组件的方法
2020/02/24 Javascript
[01:31:22]Ti4 循环赛第四日附加赛LGD vs Mouz
2014/07/13 DOTA
Python读取网页内容的方法
2015/07/30 Python
DRF跨域后端解决之django-cors-headers的使用
2019/01/27 Python
Pandas中resample方法详解
2019/07/02 Python
Python读取实时数据流示例
2019/12/02 Python
在django中使用apscheduler 执行计划任务的实现方法
2020/02/11 Python
TensorFlow使用Graph的基本操作的实现
2020/04/22 Python
Python调用C语言程序方法解析
2020/07/07 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
html5 冒号分隔符对齐的实现
2019/07/31 HTML / CSS
网站编辑求职信
2013/10/17 职场文书
个性发展自我评价
2014/02/11 职场文书
超市仓管员岗位职责
2014/04/07 职场文书
表彰大会策划方案
2014/05/13 职场文书
党员干部四风问题整改措施思想汇报
2014/10/12 职场文书
领导班子整改措施
2014/10/24 职场文书
Nginx反向代理配置的全过程记录
2021/06/22 Servers