字符串是对象,其常见方法如下:
1.split分割字串
split的格式为:
split(分割串)
其作用为,根据串中的“分割串”将字符串分割为字符串的列表。如可以用如下的语句组将一行字符串格式的数据转化为可数值计算的数据:
>>>line="123.0 80 12.3 91"
>>>temp=line.split("")
>>>temp
[ˈ123.0ˈ,ˈ80ˈ,ˈ12.3ˈ,ˈ91ˈ]
>>>data=[float(item)for item in temp]
>>>data
[123.0,80.0,12.3,91.0]
split( )方法也可以不跟参数,此时默认以空格和tab为分隔符。
2.replace
replace的调用格式为:
replace(old,new)
其意义为,将字符串中出现的原串old,替换为新的字串new。由于字符串运算不允许给串中的单个元素赋值或分片赋值,因此replace方法可以代替实现该功能。这在比对两个字符串的相似度运算中非常有用,例如比对两条蛋白的相似度时,有时需要对一个字符串的某个位置插入一些空格,使某些单元独立出来。见下面的例子:
>>>seq=ˈMAGQAFRKFLPLˈ
>>>seq.replace(ˈRKFˈ,ˈRKFˈ)(www.daowen.com)
结果为:
ˈMAGQAF RKF LPLˈ
3.startswith
startswith的调用格式为:
startswith(子串)
其意义为,字符串是否以“子串”开始。
例如:
>>>s="When I was young Iˈd listen to the radio"
>>>s.startswith("When")
True
startswith方法在实际字符串分析中常用于寻找标志位置。例如,世界著名的蛋白质序列比对程序PSI-BLAST,将蛋白序列比对结果写进一个文本文件中,等待用户自行对比对结果进行分析。图6.2.1是某条未知蛋白序列与一组给定蛋白的比对结果文件。
通常,我们需要从该文件中自动分析出未知蛋白与每条比对上的蛋白的结果,例如图6.2.1中,遇到“>”开头的行,是一条与未知蛋白比对上的蛋白的ID,其后的两行则是比对的分值,它以“Score”开头。通过“>”和“Score”标识,就可以得到相应的行,这就需要startswith函数。
图6.2.1 蛋白质序列比对程序PSI-BLAST的比对结果文件
字符串对象还有很多方法,在编辑环境中,在字符串变量的后面输入“.”后,会自动弹出字符串对象的所有方法,见图6.2.2。
图6.2.2 字符串对象的方法
有兴趣的读者可以查阅相关的资料,测试相应方法的作用,以加深对类方法的理解。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。