一、字符串的秘密
学习了列表和元组,我们知道了分片的概念,事实上也可以应用于字符串上:
在python中没有字符这个类型,在Python看来,所谓字符,就是长度为1的字符串。当要访问字符串的其中一个字符的时候,只需要索引列表或元组的方法来索引字符串即可:
字符串和元组一样,都是属于"一言既出、驷马难追"的家伙。所以一旦定下来就不能直接对它们进行修改了,如果必须修改,我们就需要委曲求全…
二、各种内置方法
下面的表总结了字符串的所以方法及对应的含义。
这里选几个常用的给大家演示一下用法,首先是casefold(),它的作用是把整个字符串的所有字符改为小写:
count(sub[, start[, end]]) 其作用是返回 sub 在字符串里边出现的次数,start 和 end 参数表示范围,可选。注:在python文档中,用方括号扣起来的表示可选。
如果你要查找某个字符串在该字符串中的位置,可使用find(sub[, start[, end]])或者index(sub[, start[, end]])方法。如果找到了,则返回值是第一个字符的索引值;如果找不到,则find()方法会返回-1,index()方法会抛出异常。(注:异常是可以被捕获并处理的错误,目前你可以认为就是错误)
程序员很喜欢用join(sub)来连接字符串,但它的用法也许会让你感到诧异。join是以字符串作为分隔符,插入到sub字符串中所有的字符之间:
为什么说“程序员喜欢用 join()来连接字符串”,我们不是有很好用的连接符号(+)吗?这是因为当使用连接符号(+)去拼接大量的字符串时是非常低效的,因为加号会引起内存复制以及垃圾回收操作。所以对于大量的字符串拼接来说,使用join()方法的效率会高一些。
replace(old, new[, count])方法如其名,就是替换指定的字符串:
split(sep=None, maxsplit=-1)跟join()正好相反,split()用于拆分字符串:
领取专属 10元无门槛券
私享最新 技术干货