切片,即处理一个完整列表中部分数据。

语法 变量[起始索引:终止索引:步长]

首先创建一个字符串列表

>>> cars = ['toyota', 'honda', 'mazda', 'nissan', 'mitsubishi', 'subaru', 'suzuki', 'isuzu']
>>>
>>> cars
['toyota', 'honda', 'mazda', 'nissan', 'mitsubishi', 'subaru', 'suzuki', 'isuzu']

只查看列表前三个元素

>>> print(cars[0:3])
['toyota', 'honda', 'mazda']

也可以不指定起始索引位,默认从0开始

>>> print(cars[:3])
['toyota', 'honda', 'mazda']

查看列表第三个到第五个元素

>>> print(cars[2:6])
['mazda', 'nissan', 'mitsubishi', 'subaru']

查看第三个到列表末尾的值,不指定终止索引位,默认到列表结尾

>>> print(cars[2:])
['mazda', 'nissan', 'mitsubishi', 'subaru', 'suzuki', 'isuzu']

通过以上两个例子可以看到,切片时遵循“包头不包尾”的原则,

打印步长为2的列表所有值

>>> print(cars[::2])
['toyota', 'mazda', 'mitsubishi', 'suzuki']

将cars列表的数据复制一份到vivi列表

>>> vivi = cars[:]
>>>
>>> vivi
['toyota', 'honda', 'mazda', 'nissan', 'mitsubishi', 'subaru', 'suzuki', 'isuzu']
>>>
>>> del cars
>>>
>>> vivi
['toyota', 'honda', 'mazda', 'nissan', 'mitsubishi', 'subaru', 'suzuki', 'isuzu']

python列表的切片与复制的更多相关文章

  1. Python列表的切片操作

    在Python列表中分片是一个很重要的操作,有以下几个注意的点: 切片时不包含最后一位,如下例子中,要取最后一位,从0开始算应该是到7就可以取,但是需要8才能取 2.      默认取值步长为1,即每 ...

  2. python列表的切片操作允许索引超出范围

    其余的不说,列表切片操作允许索引超出范围:

  3. Python 列表的切片和连接

    一.定义一个list >>> a = [1, 3, 4, 5, 'a', 's'] >>> a [1, 3, 4, 5, 'a', 's'] 二.获取列表中前3个元 ...

  4. python列表各种切片姿势

    顺着切,反着切,想怎么切就怎么切,但是别被坑. mylist = [1,2,3,4,5,6,7,8,9] print(mylist[2:7:2]) # [3, 5, 7] print(mylist[: ...

  5. python 列表操作-切片

  6. Python 列表切片陷阱:引用、复制与深复制

    Python 列表的切片和赋值操作很基础,之前也遇到过一些坑,以为自己很懂了.但今天刷 Codewars 时发现了一个更大的坑,故在此记录. Python 列表赋值:复制"值"还是 ...

  7. Python列表的深浅复制

    概述 Python的列表可以复制,但是这里面有浅复制和深复制,我相信有些人不明白什么是深复制和浅复制,今天我们就来谈谈. = 号复制 #!/usr/bin/env python # -*- codin ...

  8. Python高级特性(切片,迭代,列表生成式,生成器,迭代器)

    掌握了Python的数据类型.语句和函数,基本上就可以编写出很多有用的程序了. 比如构造一个1, 3, 5, 7, ..., 99的列表,可以通过循环实现: L = [] n = 1 while n ...

  9. Python 列表复制

    Python 列表复制 关于Python 列表的复制,有多种方法,常用的 有 赋值.切片.list.copy,copy.deepcopy等. 但是 实际用时 又有区别,不小心可能就用错了. 接下来 简 ...

随机推荐

  1. python下vs的使用

    part 1:导入pygame包 在python环境下:视图---其他窗口--python环境,选择从pypi安装pygame

  2. Appium真机运行测试用例

  3. 014_linuxC++之_不同类型的继承

    #include <iostream> #include <string.h> #include <unistd.h> using namespace std; c ...

  4. Remove Mapping

    http://social.msdn.microsoft.com/forums/vstudio/en-US/ffa3aa15-1d61-4464-ac4a-7a812d073a67/remove-ma ...

  5. more/less

    more less

  6. Mybatis源码学习之资源加载(六)

    类加载器简介 Java虚拟机中的类加载器(ClassLoader)负责加载来自文件系统.网络或其他来源的类文件.Java虚拟机中的类加载器默认使用的是双亲委派模式,如图所示,其中有三种默认使用的类加载 ...

  7. Leetcode题目56.合并区间(中等)

    题目描述: 给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 ...

  8. Jinja2学习

    模板: 知名模板引擎:jinja2(flask默认的模板引擎) Mako template模板路径: 1.在渲染模板的时候,会默认从根目录下的templates目录下查找模板文件 2.也可以自定义模板 ...

  9. SRS之SrsHlsCache::reap_segment详解

    1. 是否可切片的检测 首先在调用 SrsHlsCache::reap_segment 函数进行切片时,针对音频或视频,都会有一个函数来进行检测当前片的时长是否符合所要求的时长. 对于音频,会调用 S ...

  10. SpringCloud(四)之Netflix开源组件断路器Hystrix介绍

    一.前言? 1.Netflix Hystrix断路器是什么? Netflix Hystrix是SOA/微服务架构中提供服务隔离.熔断.降级机制的工具/框架.Netflix Hystrix是断路器的一种 ...