其他
python 查找字符串
1引言
分享一下 python 里查找特定字符串的笔记。
2find 函数查找
序列:
seq = 'ATGTGACCCTGATTTTGAATGatgAtgAtGaTGaTg'
find 函数查找指定字符串 第一个 出现位置的下标索引:
seq.find('ATG')
0
若找不到则返回 -1:
seq.find('ATB')
-1
如果我们想寻找多个字符串,可以写个循环,每次指定上一次出现的位置向后寻找,给定 start 参数,参考自 https://mp.weixin.qq.com/s/VCXtONFEeWPdhbiaj00Nng
:
def find_all(string, sub):
start = 0
pos = []
while True:
start = string.find(sub, start)
if start == -1:
return pos
pos.append(start)
start += len(sub)
find_all(seq,'ATG')
[0, 18]
3re 库函数查找
返回的是查找到的字符串:
import re
re.findall('ATG',seq)
获取每个字符串的索引:
[pos.start() for pos in re.finditer('ATG',seq)]
[0, 18]
如果需要忽略大小写进行查找,则可以加上 flags=re.IGNORECASE
参数:
re.findall('ATG',seq,flags=re.IGNORECASE)
['ATG', 'ATG', 'atg', 'Atg', 'AtG', 'aTG', 'aTg']
索引:
[pos.start() for pos in re.finditer('ATG',seq,flags=re.IGNORECASE)]
[0, 18, 21, 24, 27, 30, 33]
欢迎加入生信交流群。加我微信我也拉你进 微信群聊 老俊俊生信交流群
哦,数据代码已上传至QQ群,欢迎加入下载。
群二维码:
老俊俊微信:
知识星球:
所以今天你学习了吗?
欢迎小伙伴留言评论!
今天的分享就到这里了,敬请期待下一篇!
最后欢迎大家分享转发,您的点赞是对我的鼓励和肯定!
如果觉得对您帮助很大,赏杯快乐水喝喝吧!
往期回顾
◀m6A metagene distribution 计算详解
◀跟着 nature cell biology 学绘图-小提琴图
◀...