python与数据思维基础笔记_Python基础笔记(字符串和list和tuple)

对于字符串和编码,本人水平不够,不能总结,大家可以参考廖雪峰老师的总结,或者去网上听听计算机基础课程,大家可以去自己百度。

下面开始对list和tuple进行总结:

list(列表)

list是Python里的基础数据类型之一,是一个有序的集合,集合里的元素可以是Python里的数据类型。

我们可以这样定义一个list:

1728979-20190703093821570-1051212379.png

在这里,右边变量list就是一个列表(list)(变量名字起的不太友好=。=)

这时候不得不说下索引了(懂的可以跳过),索引就好比为座位号,list就好比一个教室,里面每个座位都有自己的座位号(索引值),但索引是以0为首的,就相当于第一个座位的座位号

是0,不是以我们习以为常的1开始,。

我们可以用len()函数来得出列表的元素个数(教室座位数),然后就可以用索引来调出list中的对应元素了。

1728979-20190703095802205-1757824665.png

要补充的是,我们也可以倒着来输出每个元素,直接用索引 -1 来取最后一个元素,-2 去倒数第二个元素,依次类推。如果想访问list里边的['str',1,True,None]的元素,我们可以把list[4]看成

一个列表,然后用索引调出里面的元素。

1728979-20190703120613486-1187775982.png

但要记得索引值不要超出范围,索引超出范围会引发错误,记住 list的最后一个索引是 len(list)-1 。

下面来总结下list(列表)的一些操作函数。

.append(添加内容)

把添加内容直接添加到列表的末尾,添加内容可以是字符串,整数,浮点数,列表等。

.insert(索引,插入内容)

索引就是你要插入的位置的索引,插入内容同上。

.pop() / .pop(索引)

直接用 .pop() 可以直接删除列表末尾最后一个元素,当()里填入索引值时,直接删除对应索引值的元素。

当我们需要替换某个元素时,可以把其当作变量重新赋值

1728979-20190703105157827-1896130956.png

tuple(元组)

tuple和list比较类似,具有有序性,但tuple在初始化后就不能再被修改,所以又叫做只读列表,元组有一定的安全性,能用tuple代替list时,尽量用tuple,但要注意的是,元组本身

不可变,但如果元组中还包含其他可变元素,这些可变元素是可以被修改的。

当修改不可变的元素时会报错:

1728979-20190703130113207-1403257866.png

当修改可变元素时:

1728979-20190703130239317-162690179.png

由于tuple时不可变的,所以一些修改,增添函数不能对tuple进行操作,但像len(),.count(),.index()还是可以用的。

最后补充几点:

1.当元组初始化时只有一个元素,如 t = (1) 时,会产生歧义。

1728979-20190703132715003-1260116865.png

可以看出,tuple的类型是 int ,不是tuple,所以,Python规定,在元组定义只有一个元素时,元素后面必须加一个逗号,来消除歧义。

1728979-20190703133043222-1868554121.png

最后来点我思考与理解

list,是运用了C语言里链表和数组的思想,在C里数组的类型是统一的,有序的,但数组的长度也是不可修改的,且插入,删除非常麻烦,而链表的长度可以修改,插入删除非常简单,每个元素的类型可以是任意的,总结一下,数组的优点是有序,查找起来方便,链表的优点是增删改方便,元素类型不唯一,Python里把两者的优点结合在list上,是C的提升。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值