python 内置数据结构 切片
切片
- 通过索引区间访问线性结构的一段数据
- sequence[start:stop] 表示返回[start,stop]区间的子序列
- 支持负索引
- start为0,可以省略
- stop为末尾,可以省略
- 超过上界(右边界),就取到末尾;超过下界(左边界),取到开头
- start一定要早stop的左边
- [:]表示从头到尾,全部元素被取出,等效copy()方法
切片举例:
print('www.magedu.com'[4:10]) #打印4到9的字符,执行结果magedu
print('www.magedu.com'[:10]) #打印前9个字符,执行结果www.magedu
print('www.magedu.com'[4:]) #打印第四个字符到最后,执行结果magedu.com
print('www.magedu.com'[:]) #打印所有字符,执行结果www.magedu.com
print('www.magedu.com'[:-1]) #打印从开始到倒数第二个字符(去尾的原理),执行结果www.magedu.co
print('www.magedu.com'[4:-4]) #打印第四个字符到-4的字符,执行结果magedu
print('www.magedu.com'[4:50]) #打印4个字符到50个,执行结果magedu.com
print(b'www.magedu.com'[-40:10]) #打印b类型的数据,执行结果b'www.magedu'
print(bytearray(b'www.magedu.com')[-4:10]) #打印bytearray类型数据,执行结果bytearray(b'')
print(tuple('www.magedu.com')[-10:10]) #打印-10到9的字符,并输出为元组 执行结果('m', 'a', 'g', 'e', 'd', 'u')
print(list('www.magedu.com')[-10:-4]) #打印-10到-4的字符,并输出为列表,执行结果['m', 'a', 'g', 'e', 'd', 'u']
切片步长:
- [start:stop:step]
- step步长,可以为正,负整数,默认是1
- step要和start:stop同向,否则返回空序列
print('www.magedu.com'[4:10:2]) #打印4到10的字符,但步长为2 magedu的每隔2个打印mgd
print(list('www.magedu.com')[4:10:-2]) #索引要同向,执行结果是[]
print(tuple('www.magedu.com')[-10:-4:2]) #打印-10到-4的字符,但步长为2 magedu的每隔2个打印mgd 执行结果('m', 'g', 'd')
print(b'www.magedu.com'[-4:-10:2]) #执行结果是""
print(bytearray(b'www.magedu.com')[-4:-10:-2]) # -4 到 -10的字符,但步长为2 执行结果bytearray(b'.dg')
python 内置数据结构 切片的更多相关文章
- Python内置数据结构之列表list
1. Python的数据类型简介 数据结构是以某种方式(如通过编号)组合起来的数据元素(如数.字符乃至其他数据结构)集合.在Python中,最基本的数据结构为序列(sequence). Python内 ...
- Python内置数据结构--列表
本节内容: 列表 元组 字符串 集合 字典 本节先介绍列表. 一.列表 一种容器类型.列表可以包含任何种类的对象,比如说数字.子串.嵌套其他列表.嵌套元组. 任意对象的有序集合,通过索引访问其中的元素 ...
- Python内置数据结构之字符串str
1. 数据结构回顾 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于字符串,但是字符串是不可变序列,因此所有的元素赋值和切片赋值都是非法的. >>> ...
- Python内置数据结构之元组tuple
1. Python序列之元组:不可修改的序列 元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能像列表式的增删改,只能查,切片,所以元组又叫只读列表. 元组用圆括号括起(这是通常采用的做法) ...
- python内置数据结构方法的时间复杂度
转载自:http://www.orangecube.net/python-time-complexity 本文翻译自Python Wiki 本文基于GPL v2协议,转载请保留此协议. 本页面涵盖了P ...
- Python内置数据结构之字典dict
1. 字典 字典是Python中唯一的内置映射类型,其中的值不按顺序排列,而是存储在键下.键可能是数(整数索引).字符串或元组.字典(日常生活中的字典和Python字典)旨在让你能够轻松地找到特定的单 ...
- python 内置数据结构 字符串
字符串 一个个字符组成的有序的序列,是字符的集合 使用单引号,双引号,三引号引住的字符序列 字符串是不可变对象 Python3起,字符串就是Unicode类型 字符串定义 初始化 s1 = 'stri ...
- python内置数据结构
数据类型: 数值型 int float complex bool 序列对象 字符串 str 列表 list 元组 tuple 键值对 集合 set 字典dict 数值型: int.float.comp ...
- Python第五章-内置数据结构05-集合
Python内置数据结构 五.集合(set) python 还提供了另外一种数据类型:set. set用于包含一组无序的不重复对象.所以set中的元素有点像dict的key.这是set与 list的最 ...
随机推荐
- Java基础 与时间日期相关的类:System -Date -SimpleDateFormat -Calendar类 -解决后缀.000Z 的时区问题
笔记总结: /**与时间相关的类:System_Date_SimpleDateFormat_Calendar类 * 1.system 类下的currentTimeMillis() * 输出从1970年 ...
- vue 之 render 函数不能渲染非全局自定义函数-方案
import customCom from 'xxx.vue' render: (h) => { return h(customCom) }
- linux实操_shell
简单shell编写: 执行方式: (1)推荐 (2)不推荐
- [唐胡璐]MongoDB - 在Win7下环境搭建
做Selenium一直都是用的Excel来管理数据驱动的数据,现在想用MongoDB来管理,所以对MongoDB做一个简单的了解应用: Include the below items:1. what ...
- 尤娜博客系统 Una
站长资讯平台:Una [‘尤娜’] 只是一个项目代号,没有特殊含义.尤娜是站在巨人的肩膀上开发完成的博客系统,旨在为程序员提供一个极简的内容创作管理平台,尤娜100%开放源代码,如果您对她感兴趣,Fo ...
- 使用docker 起容器配置负载均衡(加权)
首先要准备三个nginx的容器: 第二个容器: 第三个容器: 进入第一个容器(主容器) 要配置的容器(docker exec -it 容器id /bin/bash) vi/etc/nginx/ng ...
- BZOJ 4807 車 组合数学
思路:高精度\((what)\) 提交:2次(后来发现有种更快的写法) 题解: 设\(n>m\),那么显然答案为\(C(n,m)\),相当于只能放\(m\)个棋子,可以在\(n\)列中选任意不同 ...
- Win7下如何安装切换jdk7和jdk8
一.安装好JDK1.7和1.8. 二.配置环境变量: 1. 创建三个JAVA_HOME.JAVA7_HOME,存放JDK7的安装路径.JAVA8_HOME,存放JDK8的安装路径.JAVA_HOME, ...
- 020_统计 13:30 到 14:30 所有访问 apache 服务器的请求有多少个
统计 13:30 到 14:30 所有访问 apache 服务器的请求有多少个 #!/bin/bash#awk 使用-F 选项指定文件内容的分隔符是/或者:#条件判断$7:$8 大于等于 13:30, ...
- redis数据存储--C++连接redis
一.下载的是Redis Windows版本:下载地址:https://github.com/microsoftarchive/redis:解压到:E:\Software\redis-3.0: 二.用V ...