Python笔记1--关于序列的学习

Python中的数据类型有数字,字符串,列表,元组,字典5种。其中字符串,列表(一下含有list的变量均为列表)和元组(一下含有tuple的变量均为元组变量)均称为序列。

一.序列的获取

序列的获取方式有两种。第一种叫做索引法。顾名思义,索引法就是通过索引号进行取值,比如,>>>list1=[1,2,3,4,5]   >>>lista[0]  输出1  (这里的>>>表示下一行命令或输出),每个序列的索引号均是从0开始,又如,>>>tuple1=('a','b','c')  >>>tuple[2]  输出c  。若元组中含有list,则将其看做一个整体输出,如:>>>tuple2=(['a','b'],1,2,3)  >>>tuple[0] 输出[a,b]

>>>tuple2[0][0]  输出'a'。第二种获取序列的方式就是切片法。何为切片法,举个例子,>>>list2=[1,2,3,4,5] >>>list2[1:4] 输出[2,3,4],这种方法就叫切片法,基本格式就是var[a:b:c]

其中,var表示变量名,a表示起始索引,b表示终止索引减1(注意,这里是减1!!!)c表示步长,默认为1。 再如,>>>list2=[1,2,3,4,5]  >>>list2[:] 输出[1,2,3,4,5] 从头到尾输出,

>>>list2[-3:-1]  输出[3, 4] 出现负数的情况,-1表示最后一个值,然后依次往前-2,-3这样,比如这里的-1就是5,-2就是4,依次类推。。。 这里需要注意,切片获取方式永远是从左往右,否则输出为空,如 >>>list2[0:-3] >>>[1,2] ,但若>>>list2[-3:0]  输出[ ]  输出便为空,因为索引值-3为3,0为1,1在3的左边,无法从右往左输出。除非是下面这种特殊情况,>>>list[-3:0:-1]  输出[3,2] 这里的步长设为-1,从右往左输出。

二.序列的添加,删除与修改

元组不支持一切修改和添加操作,而列表可以。这里有必要先对列表与元组的id问题就行比较,列表相当于一个标号的容器,容易里面的内容可以不断地变换与更新,但容器还是这个容器,而元组可以看做一个与内容唯一对应的“黑箱”,内容变了就变成另外一个黑箱了。

列表                                                                              元组
>>> list=[1,2,3,4,5]                                                     >>> tuple3=('a',2,2,3)  
>>> list.append(6)       #添加一个元素                        >>> id(tuple3) 
>>> list                                                                                 47649720L                       #元组1的id
[1, 2, 3, 4, 5, 6]                                                             >>> tuple3=('a',1,2,3)
>>> id(list)                                                                    >>> id(tuple3) 
47199496L                  #获取list的id                                47580488L                       # 元组的id发生变化                                                                                                                                       
>>> list.remove(6)      #删除一个元素                          >>>tuple3=('a',3,2,3)                                                                             
>>> list                                                                          >>>id(tuple3)                              
[1, 2, 3, 4, 5]                                                                        45691272L              #元组的id再次发生变化
>>> id(list)
47199496L                 #id不变
>>> list[0]=4               #修改一个元素
>>> list
[4, 2, 3, 4, 5]
>>> id(list)
47199496L                   #id仍然不变


由于元组不支持一切添加,修改操作,这里只能对元组进行整体修改,由于元组的id是与内容唯一对应的,这就相当于三个不同的"黑箱"。所以会出现三个不同的id。


下面就是序列的一系列操作方法了。

(1)序列的添加append()函数,默认添加到尾部 

>>>list3=[1,2,3,4] >>>list.append(5) >>>list   输出[1,2,3,4,5]

(2)序列的删除del()或remove()函数

>>>list3=[1,2,3,4] >>>del(list[0]) >>>list   输出[2,3,4,]

>>>list3=[1,2,3,4] >>>list.remove(1) >>>list   输出[2,3,4]

(3)序列的修改

>>>list3=[1,2,3,4] >>>list[0]=2 >>>list   输出[2,2,3,4]

(4)序列的插值insert()函数

>>>list3=[1,2,3,4] >>>list.insert(2,5) >>>list   输出[1,2,5,3,4]   #在索引值为2的地方插入5

(5)序列值的弹出pop()函数

>>>list3=[1,2,3,4] >>>list.pop(2) 输出3 >>>list3 输出[1,2,4]    #弹出序列中索引为2的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值