博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20-python之切片详细介绍
阅读量:4047 次
发布时间:2019-05-25

本文共 1631 字,大约阅读时间需要 5 分钟。

文章目录

1. 切片是什么意思?

切片是指对操作的对象截取其中一部分的操作。字符串,列表,元祖都支持切片操作

2. 切片的语法

序列[开始位置下标:结束位置下标:步长]

在这里插入图片描述

2.1 结束位置下标数据不包含在内

str1 = 'abcdef'print(str1[0:2:1])print(str1[0])print(str1[1])print(str1[2])

输出结果如下:

ababc

打印 str1 下标 从 0到 2的成员,但是 str1[2]不包括

2.2 步长默认为1,步长为1的时候,步长可以不写

str1 = 'abcdef'print(str1[0:2])print(str1[2])

输出结果如下:

abc

2.3 更改步长,步长为2

str1 = 'abcdef'print(str1[0:5:2])print(str1[0])print(str1[2])print(str1[4])

输出结果如下:

aceace

2.4 不写开始下标的话,只写结束下标,默认从0开始

str1 = 'abcdef'print(str1[:5])

输出结果如下:

abcde

2.5 不写结束下标的话,只写开始下标,默认取到最后

str1 = 'abcdef'print(str1[5:])

输出结果如下:

f

2.6 开始和结束下标都不写,默认选取整个字符串

str1 = 'abcdef'print(str1[:])

输出结果如下:

abcdef

2.7 步长为负数,表示倒序,从后往前取

str1 = 'abcdef'print(str1[::-1])

输出结果如下:

fedcba

2.8 切片的下标范围,正负整数均可

字符串下标是负数,与原先的字符串的对应关系

str1 = 'abcdef'print('str1[-1]:%c' % str1[-1])print('str1[-2]:%c' % str1[-2])print('str1[-3]:%c' % str1[-3])print('str1[-4]:%c' % str1[-4])print('str1[-5]:%c' % str1[-5])print('str1[-6]:%c' % str1[-6])

输出结果如下:

str1[-1]:fstr1[-2]:estr1[-3]:dstr1[-4]:cstr1[-5]:bstr1[-6]:a

1. 选取 -4 — -1 之间的序列

str1 = 'abcdef'print(str1[-4:-1])

输出结果如下:

cde

2.9 如果下标选取方向和步长的选取方向冲突,则没有结果!

1. 第一种下标是正整数

str1 = 'abcdef'print(str1[4:1:1])

输出结果为空!

开始是 4,结束 是 1, 方向是从右到左, 步长为1 表示选取方向是从左到右,所以选取没有结果!

但是我把步长改为-1呢?

str1 = 'abcdef'print(str1[4:1:-1])

输出结果如下:

edc

开始是 4,结束 是 1, 方向是从右到左, 步长为-1 表示选取方向也是从右到左, 即开始是 str1[4] (e) 结束是 str1[1] (b), 但是结束并不包含!即输出结果 是 edc

2. 下标是负整数

str1 = 'abcdef'print(str1[-4:-1:-1])

输出结果是空!

开始是 -4,结束 是 -1, 方向是从左到右, 步长为-1 表示选取方向是从右到左,所以选取没有结果!

把步长改为 1呢?

str1 = 'abcdef'print(str1[-4:-1:1])

输出结果如下:

cde

开始是 -4,结束 是 -1, 方向是从左到右, 步长为1 表示选取方向也是从左到右, 即开始是 str1[-4] © 结束是 str1[-1] (f), 但是结束并不包含!即输出结果 是 cde

转载地址:http://ieyci.baihongyu.com/

你可能感兴趣的文章
内存池
查看>>
输入设备节点自动生成
查看>>
GNU hello代码分析
查看>>
Qt继电器控制板代码
查看>>
wpa_supplicant控制脚本
查看>>
gstreamer相关工具集合
查看>>
RS232 四入四出模块控制代码
查看>>
linux 驱动开发 头文件
查看>>
container_of()传入结构体中的成员,返回该结构体的首地址
查看>>
linux sfdisk partition
查看>>
ipconfig,ifconfig,iwconfig
查看>>
opensuse12.2 PL2303 minicom
查看>>
网络视频服务器移植
查看>>
Encoding Schemes
查看>>
移植QT
查看>>
如此调用
查看>>
计算机的发展史
查看>>
带WiringPi库的交叉编译如何处理一
查看>>
带WiringPi库的交叉笔译如何处理二之软链接概念
查看>>
Spring事务的七种传播行为
查看>>