【Python第25课】字符串的分割与拼接

 【Python第25课】字符串的分割与拼接

字符串和list之间有很多不得不说的事。比如有同学想要用python去自动抓取某个网页上的下载链接,那就需要对网页的代码进行处理。处理的过程中,免不了要在字符串和list之间进行很多操作。

我们先从最基本的开始。假设你现在拿到了一个英语句子,需要把这个句子中的每一个单词拿出来单独处理。

sentence = 'I am an Englist sentence'

这时就需要对字符串进行分割。

sentence.split()

split()会把字符串按照其中的空格进行分割,分割后的每一段都是一个新的字符串,最终返回这些字符串组成一个list。于是得到

['I', 'am', 'an', 'Englist', 'sentence']

原来字符串中的空格不再存在。

除了空格外,split()同时也会按照换行符\n,制表符\t进行分割。所以应该说,split默认是按照空白字符进行分割。

之所以说默认,是因为split还可以指定分割的符号。比如你有一个很长的字符串

p = 'Hi. I am the one. Bye.'

通过指定分割符号为'.',可以把每句话分开

p.split('.')

得到

['Hi', ' I am the one', ' Bye', '']

这时候,'.'作为分割符被去掉了,而空格仍然保留在它的位置上。

注意最后那个空字符串。每个'.'都会被作为分割符,即使它的后面没有其他字符,也会有一个空串被分割出来。例如

'aaa'.split('a')

将会得到['', '', '', ''],由四个空串组成的list。


既然可以把字符串分割,是不是应该有字符串拼接才对呢,那么我们来看第二个词,join。

split是把一个字符串分割成很多字符串组成的list,而join则是把一个list中的所有字符串连接成一个字符串。

join的格式有些奇怪,它不是list的方法,而是字符串的方法。首先你需要有一个字符串作为list中所有元素的连接符,然后再调用这个连接符的join方法,join的参数是被连接的list:

s = ';'

li = ['apple', 'pear', 'orange']

fruit = s.join(li)

print fruit

得到结果'apple;pear;orange'。

从结果可以看到,分号把list中的几个字符串都连接了起来。

你也可以直接在shell中输入:

';'.join(['apple', 'pear', 'orange'])

得到同样的结果。

用来连接的字符串可以是多个字符,也可以是一个空串:

''.join(['hello', 'world'])

得到'helloworld',字符串被无缝连接在一起。

明天我们将利用学到的只是来做一个小游戏,另外最近要录制Python系列课程,因为单纯文字的确人有看不懂了,不过没关系,万能如我还可以录制视频,只是耗费时间会长一点。

【Python第25课】字符串的分割与拼接

上一篇:C#练习题答案: 停止gninnipS我sdroW!【难度:2级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战


下一篇:使用Java自动完成句子