Python中的列表

Posted tizer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中的列表相关的知识,希望对你有一定的参考价值。

列表切片

  如何拿到列表中的部分元素,Python 引入了 “切片” 的概念。

  上代码:

words = [a,b,c,d]
print(words[0:3])

  console:

 技术图片

冒号(:)左边为想“切”的开始索引,右边则是结束索引,不含右索引处的值,与range() 函数 一样。

省略第一个索引:

words = [a,b,c,d]
print(words[:3])

console:

技术图片

如果,省略冒号左边的索引,则默认为列表的开头处切。

省略第二个索引:

words = [a,b,c,d]
print(words[1:])

console:

技术图片

如果,省略的是冒号右边的索引,同理,从指定的第一个索引开始直至列表末尾元素。

复制列表

  不难想到,如果两个索引都省略,则是复制了整个列表的元素。这个复制的列表和源列表是互不影响的。可以分别操作其中之一,另一个不会被影响。

  

  如果想用下面的方式去复制列表是行不通的。

words = [a,b,c,d]
words_copy = words
words_copy.append(e)
print(words_copy)
print(words)

console:

技术图片

输出表明:两个列表是一样的,改变其中一个列表的元素,另一个随之改变,这并非我们想要的结果。

所以:以上是 复制列表 错误的示范。

 

 

如果大学学过C语言或者其他编程语言的话,其实上面的结果比较好理解,就是两个变量指向了同一存储数据地址,只要其中一个去改变,因为另一个也指向它,所以也会对应改变。 

 

 

  

以上是关于Python中的列表的主要内容,如果未能解决你的问题,请参考以下文章

13 个非常有用的 Python 代码片段

片段 A 的列表视图中的片段 B 中的新列表视图,单击 A 的列表项

Python代码阅读(第26篇):将列表映射成字典

Python代码阅读(第25篇):将多行字符串拆分成列表

如何将列表视图中的数据从一个片段发送到另一个片段

片段中的 notifyDataSetChanged() 不刷新列表视图