这是关于Python的第3篇文章,主要介绍下字符串的分片与索引、字符串的方法。
字符串的分片与索引:
字符串可以用过string[X]来分片与索引。分片,简言之,就是从字符串总拿出一部分,储存在另一个地方。
看下面这个例子,string[0]代表第一个字符,string[-1]为最后一个字符,空格也算一个字符;如果想截取某一段字符时,可以用string[X:X]来表示,其中冒号切记需为英文状态下的,如果从头或是从结尾开始截取,可以直接省略掉开头和结尾的表示。
1 string = 'I am a Product Manager'2 print(string[0])3 print(string[2])4 print(string[-1])5 print(string[-3])6 print(string[0:9])7 print(string[4:])8 print(string[:9])
运行结果:
IargI am a Pr a Product ManagerI am a Pr
现在,我们来尝试组一个新单词:
1 string = 'father and mother, i love you'2 new_word = (string[0] + string[7] + string[11] + string[-10] +string[-8] + string[-3])3 print(new_word)
将分片分出来的字符组成了新单词:family。运行结果:
family
字符串的方法:
Python是面向对象的编程语言,面向的对象有各种功能特性,专业术语称之为“方法”。看下面这个例子,将手机号码保留后四位,其余用“*”替换:
1 phone_number = '13098763773'2 hiding_phone_number = phone_number.replace(phone_number[:7],'*' * 7)3 print(hiding_phone_number)
里面用到了替换这个方法:对象.replace(),可以将想要隐藏的手机位数用星号替换掉。运行结果:
*******3773
接下来,试试find(),查找在字符串里第一个出现子串的位置。
1 search = '130'2 num_a = '13098763773'3 num_b = '13461309856'4 num_c = '15098763453'5 print(str(num_a.find(search)))6 print(str(num_b.find(search)))7 print(str(num_c.find(search)))
返回-1时,表示没有查到。运行结果:
04-1
这一节,就先简单介绍到这儿,关于Python的下一篇会介绍下函数。
操作环境:Python版本,3.6;PyCharm版本,2016.2;电脑:Mac
----- End -----
作者:杜王丹,微信公众号:杜王丹,互联网产品经理。