小疯谈python:(五)数据类型之序列类型(中)

上一篇文章中,我介绍了对序列类型的通用操作,也就是对列表、元组、字符串这三种数据类型在都可以使用的方法。但是对于这三种数据类型的差异化操作我并没有介绍,因此在这篇文章,我将介绍列标表和元组的一些特有的操作。

小疯谈python:(五)数据类型之序列类型(中)


话不多说,我们开始吧。

列表:

列表是包含0个或多个元素的有序序列,其长度和内容可变,并且其元素的类型可以为任何符合python规则的数据类型,用 list=[ 元素 ] 来表示。

列表是序列类型,所以上一篇文章中,有关序列类型的通用操作完全适用于列表,这里边不在展开。

:列表的特有方法:由于列表是可变的,因此在python中有针对列表的额外的操作方法和函数,主要是针对列表的增删改。

向列表增加元素:

  • ls.append( s ) : 向列表ls的末尾增加元素s
小疯谈python:(五)数据类型之序列类型(中)

  • ls.insert( i , s ) :向列表ls第 i 个元素和第 i+1 个元素插入元素s
小疯谈python:(五)数据类型之序列类型(中)

  • ls.extend(ls1)或者ls+=ls1:向列表ls的末尾加入ls1中的所有元素
小疯谈python:(五)数据类型之序列类型(中)

把列表中的元素删除:

  • ls.pop(i):删除列表ls中第 i+1 个元素
小疯谈python:(五)数据类型之序列类型(中)

  • ls.remove(x): 删除列表ls中正序第一个出现的元素x
小疯谈python:(五)数据类型之序列类型(中)

  • ls.clear(): 删除列表ls中的所有元素,即清空列表
小疯谈python:(五)数据类型之序列类型(中)

  • del ls[ i : j ]: 删除列表ls中第i+1到第j个的元素
小疯谈python:(五)数据类型之序列类型(中)

修改列表中的元素

  • ls[ i ] = s: 把列表ls中第 i+1 个元素改成 s
小疯谈python:(五)数据类型之序列类型(中)

  • ls*=n: 把列表ls中的所有元素复制你次,同时更新列表
小疯谈python:(五)数据类型之序列类型(中)

  • ls.reverse() : 将列表ls中的元素反转,即将列表中的元素从后向前排
小疯谈python:(五)数据类型之序列类型(中)

以上便是列表主要的特有操作,其中list.append(),list.remove()和list[i]=x是最为常用的列表方法。

小疯谈python:(五)数据类型之序列类型(中)

元组:元组是python中比较特殊的数据类型,因为它一旦创建就不能被修改,这是它与列表的主要区别,其表达式为 tuple=( 元素 ),它的内部的元素可以为符合python要求的任何数据类型。

由于元组具有不可变的特点因此对于元组来说,只有查询的操作(也就是上一篇文章中介绍的通用操作,常用的有index()和count()方法),没有增删改的操作,如果想要对元组类的数据进行操作,可以先把元组转化成列表,然后运用列表的方法对其进行操作(后面我会专门介绍一下序列类型的一些其他方法)。

也许你会问,既然元组与列表相似,为什么不直接使用列表,而要在定义一个数据类型呢?

其实使用元组是为了保证数据的稳定,因为在实际操作的过程中,数据放在列表中可能会在代码运行的过程中被预期之外的情况改变,如果你不希望这个数据被改变,使用元组则可以实现这一要求。

拓展:赋值运算符和逻辑运算符

  • 赋值运算符:当我们要对一个变量进行累加运算的时候,我们常常会这样写a=a+1,但程序员为了简化代码,通常会写出 a+=1,这里 ‘+=’便是赋值运算符之一。对于新手来说,不建议这么做,因为这样会降低代码的可读性。下面是主要的赋值运算符。
小疯谈python:(五)数据类型之序列类型(中)

  • 逻辑运算符:即逻辑中常用的“或”,“且”,“非”这三个词。在python中用‘or’,‘and’,‘not’表示上三个词,逻辑运算符常用于条件判断,因此常和比较运算符组合使用,返回布尔值。在这里我简单的介绍下逻辑运算的规则,True表示命题为真,False表示命题为假。
    • and(且):
      • True and True 为 True
      • True and False 为False
      • False and True 为False
      • False and False 为False
      • 由此可见,只有这有前后两个命题都为真的时候,总命题才为真,一旦有一个为假则总命题为假。另外,在python中如果前命题已经为假了,那么解释器不会在判断后命题,无论它是否为真,即使后命题有语法错误也不会进行判断
    • or(或):
      • True or True 为 True
      • True or False 为 True
      • False or True 为 True
      • False or False 为 False
      • 由此可见,只有这有前后两个命题都为假的时候,总命题才为假,一旦有一个为真则总命题为真。另外,在python中如果前命题已经为真了,那么解释器不会在判断后命题,无论它是否为真,即使后命题有语法错误也不会进行判断
    • not(非):
      • not True 为 False
      • not False 为 True
      • 没什么好讲的。

好的以上便是关于列表和元组的一些操作,如果你有什问题可以直接私信我,下一篇将开始具体介绍序列类型的字符串,同样的,如果小伙伴觉得有所收获,那么还请点赞和转发一下吧。


小疯谈python:(五)数据类型之序列类型(中)


分享到:


相關文章: