Python中index()和seek()的用法(详解)
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()的用法(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341