声明:在人工智能技术教学期间,不少学生向我提一些python相关的问题,所以为了让同学们掌握更多扩展知识更好地理解AI技术,我让助理负责分享这套python系列教程,希望能帮到大家!由于这套python教程不是由我所写,所以不如我的AI技术教学风趣幽默,学起来比较枯燥;但它的知识点还是讲到位的了,也值得阅读!PS:看不懂本篇文章的同学请先看前面的文章,循序渐进每天学一点就不会觉得难了!

为了提取固定偏移的子串,我们可以利用分片技术:

>>> line = 'aaa bbb ccc'

>>> col1 = line[0:3]

>>> col3 = line[8:]

>>> col1

'aaa'

>>> col3

'ccc'

这组数据出现在固定偏移处,因此可以通过分片从原始字符串分出来。这一技术称为解析,只要你所需要的数据组件有固定的偏移。如果是有些分割符分开了数据组件,你就可以使用split提取出这些组件。在字符串中,数据出现在任意位置,这种方法都能够工作:

>>> line = 'aaa bbb ccc'

>>> cols = line.split()

>>> cols

['aaa','bbb','ccc']

字符串的split方法将一个字符串分割为一个子字符串的列表,以分隔符字符串为标准。在上一个例子中,我们没有传递分隔符,所以默认的分隔符为空格——这个字符串被一个或多个的空格、制表符或者换行符分成多个组,之后我们得到了一个最终子字符串的列表。在其他的应用中,可以使用更多的实际的分隔符分割数据。下面这个例子使用逗号分隔一个字符串,这个字符串是使用某些数据库工具返回的由逗号分隔开的数据:

>>> line = 'bob,hacker,40'>>> line.split(',')

['bob','hacker','40']

分隔符也可以比单个字符更长,比如:

>>> line = "i'mSPAMaSPAMlumberjack"

>>> line.split("SPAM")

["i'm",'a','lumberjack']

尽管使用分片或split方法做数据解析的潜力有限,但是这两种方法运行都很快,并且能够胜任日常的基本字符串提取操作。


我的微信公众号是“人工智能知识分享”

python系列教程91_人工智能