zoukankan      html  css  js  c++  java
  • Python中的列表(6)

    列表切片

      如何拿到列表中的部分元素,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语言或者其他编程语言的话,其实上面的结果比较好理解,就是两个变量指向了同一存储数据地址,只要其中一个去改变,因为另一个也指向它,所以也会对应改变。 

      

  • 相关阅读:
    进程实际操作篇2
    进程的实际操作篇1
    进程的理论知识
    解决套接字粘包,udp套接字对象的使用和socketserver模块实现并发
    day24-网络知识扫盲,socket的基本使用
    day23-网络编程之互联网基础,tcp/ip协议详细介绍
    day21-多态和多态性,鸭子类型,反射,内置方法,异常处理
    JAVA WEB小测
    JAVA动手动脑
    JAVA课上动手动脑问题2
  • 原文地址:https://www.cnblogs.com/tizer/p/10920398.html
Copyright © 2011-2022 走看看