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基础--反射)框架的概念及用反射技术开发框架的原理
一.概述 1.框架:通过反射调用Java类的一种方式. (框架与房子非常类似,使用的用户写的程序写配置文件,就相当于给房子装修) 如房地产商造房子用户住,门窗和空调等等内部都是由用户自己安装,房子就 ...
- BZOJ 3672[NOI2014]购票(树链剖分+线段树维护凸包+斜率优化) + BZOJ 2402 陶陶的难题II (树链剖分+线段树维护凸包+分数规划+斜率优化)
前言 刚开始看着两道题感觉头皮发麻,后来看看题解,发现挺好理解,只是代码有点长. BZOJ 3672[NOI2014]购票 中文题面,题意略: BZOJ 3672[NOI2014]购票 设f(i)f( ...
- 谷歌浏览器不兼容的一些Js
这篇博文主要记录本人在实际应用中碰到的谷歌浏览器与一些Js不兼容的问题,随着时间的推移,这篇博文的内容可能越来越多,也可能一点也没有(我想那时候谷歌肯定是相当牛逼的). 1.谷歌浏览器不兼容docum ...
- GET 和 POST is so different
.原理区别 一般我们在浏览器输入一个网址访问网站都是GET请求;再FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式. HTTP定义了与服务器交互的 ...
- 51nod 1594 Gcd and Phi 反演
OTZ 又被吊打了...我当初学的都去哪了??? 思路:反演套路? 提交:\(1\)次 题解: 求\(\sum_{i=1}^{n}\sum_{j=1}^{n}\varphi(gcd(\varphi(i ...
- MySQL5.7 (审计)通过init_connect + binlog 实现MySQL审计功能
转载自:https://blog.51cto.com/13941177/2173620 一.简介 1.概述 mysql本身已经提供了详细的sql执行记录–general log ,但是开启它有以下几个 ...
- SPOJ GSS1 - Can you answer these queries I(线段树维护GSS)
Can you answer these queries I SPOJ - GSS1 You are given a sequence A[1], A[2], -, A[N] . ( |A[i]| ≤ ...
- 外网可以反问lxr
, 'baseurl_aliases' => 174 [ 'http://172.168.2.4/lxr' 175 , 'http://mydomain/lxr' 176 ...
- win10下安装docker
win10下安装docker 1. 启用Hyper-V 打开控制面板 - 程序和功能 - 启用或关闭Windows功能,勾选Hyper-V,然后点击确定(整个过程需要重新启动几次),如图: 安装Doc ...
- 7月清北学堂培训 Day 1
今天是林永迪老师的讲授~ 基础算法 1. 模拟算法 面向测试算法 模拟算法的关键就是将人类语言翻译成机器语言. 要做到以下两点: 1.优秀的读题能力: 2.优秀的代码能力: 程序流程图: 读入,循环处 ...