一、声明
本教程所使用的是Python版本是3.4.2.
二、Python列表介绍
Python列表(List)使用简单而且功能强大,其具有很好的可伸缩性,为开发者编程提供了巨大的便利。
【列表变量声明】
列表变量的声明和C语言中声明数组的方式差不多。下图中声明了一个名为 list 的列表变量。
【列表元素的索引方式】
笔者在《Python入门篇之字符串使用》一文中介绍过字符串中字符的索引方式。列表元素的索引方式和字符串字符的索引方式是一样的,都是根据元素间隙位置来切割出元素内容。下面做详细说明。
+----+----+-----+-----+----+-----+
| 23 | 65 | 82 | 21 | 37 | 49 |
+----+----+-----+-----+----+-----+
0 1 2 3 4 5 6
-6 -5 -4 -3 -2 -1
如上图所示,对一个容量为6的list列表,其元素间间隙的位置可以用两种不同的序列来表示,一种是从0到6的正序列;一种是从-6到-1的负向序列。下面看如何根据间隙位置来索引出元素吧。
如上图所示,输入相应的位置编号能够得到间隙右边的元素,输入6的时候会出现越界警告。
【获取子列表】
从一个列表中快速的获得一个子列表,同样用到了间隙位置表示方法。下面看几个从list获取subList的例子。
上图的例子中,因为间隙位置3到5和-3到-1都是涵盖了元素21和37,所以这种方式都能够得到子列表 [21, 37]。
上图的例子中,冒号有一边没有数值的话,表示到端点。
上图的例子中,如果冒号一边的数字大于实际边界,则相当于指向端点。
【修改列表元素值】
修改列表元素的值只要直接将索引出来的元素重新赋值即可。
【为列表添加元素】
使用列表对象的 append 方法可以添加新的元素到列表中。
【删除列表元素】
将相应的间隙区间赋值为 [] ,就相当于删除间隙区间包含的元素。
注意,上图的例子中即便是删除一个元素也需要使用间隙区间。如果删除一个元素的时候不使用间隙区间,而是直接使用类似于数组元素的索引,则是把元素变成空列表,而没有将元素删除。
【列表拼接】
之间使用加号能够将两个列表进行拼接。
【获取列表长度】
使用 len 函数能够直接获取列表的长度。
![image_thumb[5] python 将一组数字写入列表_Python](https://s2.51cto.com/images/blog/202502/22064150_67b9012e496f072994.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[8] python 将一组数字写入列表_Python_02](https://s2.51cto.com/images/blog/202502/22064150_67b9012e5871683138.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[10] python 将一组数字写入列表_python_03](https://s2.51cto.com/images/blog/202502/22064150_67b9012e6b5a045899.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[12] python 将一组数字写入列表_c/c++_04](https://s2.51cto.com/images/blog/202502/22064150_67b9012e9dee390445.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[14] python 将一组数字写入列表_字符串_05](https://s2.51cto.com/images/blog/202502/22064150_67b9012eaf01b92513.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[16] python 将一组数字写入列表_python 将一组数字写入列表_06](https://s2.51cto.com/images/blog/202502/22064150_67b9012eda28c57960.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[18] python 将一组数字写入列表_python_07](https://s2.51cto.com/images/blog/202502/22064151_67b9012f28b7041769.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[21] python 将一组数字写入列表_c/c++_08](https://s2.51cto.com/images/blog/202502/22064151_67b9012f4e5b628591.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[23] python 将一组数字写入列表_python_09](https://s2.51cto.com/images/blog/202502/22064151_67b9012f8bb3536786.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[25] python 将一组数字写入列表_Python_10](https://s2.51cto.com/images/blog/202502/22064151_67b9012fe24c23312.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
![image_thumb[27] python 将一组数字写入列表_Python_11](https://s2.51cto.com/images/blog/202502/22064152_67b901300f63c67044.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_30,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=/resize,m_fixed,w_1184)
















