Python基础教程系列:三、序列

    接下来,我们说一下Python的序列类型,他的成员都是有序排列的,可以通过下标偏移量访问它的成员。第一感觉就是像你熟悉的数组。在Python中序列主要包括这些:字符串(普通的字符串和unicode字符串),列表和元组类型。

一、序列类型操作符:

    1、成员关系操作符(in ,not in):主要判断某个成员是不是该序列中的成员,返回值为True/False

    2、基本操作符:

        seq[ind]                获得下标为ind的元素

        seq[ind1:ind2]      获得下标从ind1到ind2间的元素集合,但是不包含seq[ind2]这个元素

        seq  *  expx          将序列重复expx遍

        seq1 + seq2         连接两个序列,类似于java中的字符串连接符

        Python基础教程系列:三、序列 

    都很简单,一目了然

    下面说一下切片操作符,是一种seq[a:b:c]这种形式。其中a代表起始位置,b代表终止位置,c代表步长,其实a和b的概念和上面讲的相同,就是截取从哪到哪的一段内容。步长是指每次跨越的长度。举个例子看吧,干说没劲。

Python基础教程系列:三、序列

    解释一下,通过前两个我们可以看到[0:7]其实就是[0:7:1]的特殊形式,默认下步长是1,就是挨个读取。[0:7:2]就是蹦着读取,步长是2,结合示例也很容易看懂。当然我们要清楚一个事实,起始位置是不是一定不大于终止位置?其实不然,我们可以倒着遍历,但如何获得最后一个元素的下标呢,在java中可以通过XXX.length()-1的方式求得,Python中用-1就是代表最后一个元素,但是我们的本意是倒着读取从-1到0,可结果输出了“空”,这里我们需要把步长也写成负数形式,形象的理解就是倒着遍历,你的脚也必须倒退才行,所以将步长改为-1即可。但是又出现了新的问题,那就是[-1:0:-1],是从最后读到开头,但是并不包含name[0],怎么办呢?既然我们没法写一个具体的数字,那我们空着就行了,空着不写就代表序列的开头或结尾。

    3、内建函数:主要有类型转换和一些特殊功能函数

    类型转换:

    list(iter):     list是列表类型,可以把可迭代对象转换成列表

    str(obj):      把obj对象转换成字符串

    tuple(iter):  tuple是元组类型,可以把可迭代对象转换成元组

    所谓类型转换也很好理解,就好像你在java中XXX.toString(),把某种类型的东西转换成字符串一样。

    功能函数:

    len(seq):       求长度的

    sorted(seq):     排序的,通常是字典排序

    seq = [1,2,3]   max(seq) ;   min(seq)  :求最大值、最小值

    还有很多,等用的着时候再说吧。

 

    

你可能感兴趣的:(Python基础教程系列:三、序列)