上一节课给大家讲了Python的数值和字符串
在编写程序的过程中,经常会遇到使用很多数据量的情况,处理每一个数据量都要有一个相对应的变量,如果每一个变量都要单独进行定义则很繁琐,使用列表就可以解决这种问题
Python的数值类型List,也就是列表
Python的列表比较类似与其他语言的数组概念,但他又与其他语言数组的概念有很大的不同
C语言、Java的数组定义是这样的,存储多个同类型的数值的集合就叫数组。
但是在Python中列表是可以存储多种类型的数据的
例如一个普通数据类型的列表
In [3]: My_List = [10,20,30] In [4]: My_List Out[4]: [10, 20, 30]
有多种数据类型的列表
In [5]: My_Profile = ["susmote", 18, 2018, 0.5] In [6]: My_Profile Out[6]: ['susmote', 18, 2018, 0.5]
获取列表中的值
In [8]: My_List = [10, 20, 30] In [9]: My_List[0] Out[9]: 10 In [10]: My_List[1] Out[10]: 20
当然列表也可以用反序来获取
In [11]: My_List = [10, 20, 30] In [12]: My_List[-2] Out[12]: 20 In [13]: My_List[-1] Out[13]: 30
上一节我们之前讲了切片,在这里我们也可以对列表进行切片获取其中的值
In [14]: My_List = [10, 20, 30, 40, 50, 60] In [15]: My_List[1:2] Out[15]: [20] In [16]: My_List[0:2] Out[16]: [10, 20]
当然也可以用负号反序,获取列表值
In [28]: My_List = [10, 20, 30, 40, 50, 60] In [29]: My_List[-3:] Out[29]: [40, 50, 60]
你也可以直接对列表进行添加运算
In [30]: My_List = [10, 20, 30, 40, 50, 60] In [31]: My_List + [70] Out[31]: [10, 20, 30, 40, 50, 60, 70]
列表支持替换,不像字符串是不可变类型,列表是可变的类型
In [6]: word = ["a", "b", "c", "d", "f", "f"] In [7]: word Out[7]: ['a', 'b', 'c', 'd', 'f', 'f'] In [8]: word[4] = 'e' In [9]: word Out[9]: ['a', 'b', 'c', 'd', 'e', 'f']
如果你要对一个列表增加数据,那么你就可以使用append()方法
In [10]: My_List = [1, 2, 3, 4, 5] In [11]: My_List Out[11]: [1, 2, 3, 4, 5] In [12]: My_List.append(6) In [13]: My_List Out[13]: [1, 2, 3, 4, 5, 6]
改变数据也可以使用切片批量更换,也可以通过替换来清除列表中的值
In [14]: word = ['a', 'b', 'c', 'd', 'e'] In [15]: word Out[15]: ['a', 'b', 'c', 'd', 'e'] In [18]: word[1:2] = ['B'] In [19]: word Out[19]: ['a', 'B', 'c', 'd', 'e']
In [19]: word Out[19]: ['a', 'B', 'c', 'd', 'e'] In [20]: word = [] In [21]: word Out[21]: []
获取整个列表的长度,也可以使用内置方法 len()
In [22]: word = ['a', 'b', 'c', 'd', 'e'] In [23]: len(word) Out[23]: 5
列表的嵌套,列表中可以再放列表,形成多列表嵌套
In [25]: a = [1, 2, 3] In [26]: b = [4, 5, 6] In [27]: my_list = [a, b] In [28]: my_list Out[28]: [[1, 2, 3], [4, 5, 6]]
获取嵌套列表中的值
In [31]: my_list Out[31]: [[1, 2, 3], [4, 5, 6]] In [32]: my_list[0][1] Out[32]: 2 In [33]: my_list[1][1] Out[33]: 5