https://github.com/zhengxiaocai/baseex
Python编程第三讲,今天说下Python强大的内置数据类型,列表的阉割版——元组。
题外话,今天圣诞大战很好看,配图如下:
元组和列表非常相似,也是有序的,只是初始化完成之后就不能更改了。上一讲说的append() insert() pop()这些方法都木有,获取元素的值的方式和列表一样,只是获取之后不能更新了。
那么,元组有什么用处了?其实,优点就一个,安全!不能改,就很安全!所以,以后写程序的时候,凡是用来存储但是又不需要改变的常量,就可以用元组来存储。
列表的关键字是英文的中括号,元组的关键字是英文的小括号。
1.定义一个元组
classmates = ('Tom','Jerry','Curry')
英文的小括号是元组的标志,各个元素以逗号隔开。
如果要定义一个空元组,la = () 这样就可以了;如果定义一个元素的数组,la = (1) ,这样是不对的!因为,(1)==1,这样会被当成一个整数1做处理的,所以,应该这样定义,la = (1,)。
2.获取元组的长度 len()
len(classmates)
3.取单个元素的值
classmates[]
用 list[index] 的形式,index的取值为 0~len(list)-1 。classmates的三个元素的index分别是:0,1,2 。
如果,index取超了,程序会报数组越界异常。
4.index还可以倒着数
classmates[2],classmates[-1]
就classmates这个元组来说,上边两种取值方式取到的都是 'Curry'。
5.元组可以容纳不同类型的值
tuple = (1,3.14,'a',[1,2], True)
这里有个小的疑惑点,因为元组是不可变的,列表是可变的,如上所示,如果元组里包含一个列表,那么元组不就可变了吗?
其实不是的,元组的不可变,在于,元组里它的引用没变,也就是说内存地址不变,即使列表变了,访问这个列表的引用依然没变。
好了,第三讲就这么多,切记,一定要敲敲敲!
小伙伴们有任何问题,欢迎提问!
最后,小伙伴们,帮忙扩散下公众号哟,万谢!
领取专属 10元无门槛券
私享最新 技术干货