day3_数据类型——序列
零、知识回顾
数据类型:数字类型:整型(int)、浮点型(float)、布尔类型(bool)。
一、补充:转义字符
显出转义字符:
- 转义掉原有的转义字符:\\n、\\t . . .
- 取消原有的转义:原始字符串(r’ ')
示例:
>>> print('123\nabc\t***')
123
abc ***
>>> print('123\\nabc\\t***')
123\nabc\t***
>>> print(r'123\nabc\t***')
123\nabc\t***
二、序列
序列是一个可以存放多个值的容器。
有序序列:在序列种每个值都有对应的下标(就相当于酒店的房间号,方便客人查找与酒店的管理)。【字符串(str)、列表(list)、元组(tuple)】
在编程中,下标的起始值与日常生活中的计数有所不同:
- 从左往右计数:下标从0开始递增;
- 从右往左计数:下标从-1开始递减。
三、切片
切片就是当我们需要序列中某一个值或某一段值的时候,就可以使用切片进行操作。
3.1 获取单个值
格式:序列名[所取值下标] #方括号为英文符号
>>> words = '今天是第三天' #获取‘是’字
>>> print(words[2]) #1)正向:从左往右
是
>>> print(words[-4]) #2)逆向:从右往左
是
3.2 获取多个值
格式:序列名[起始值下标:终点值下标+1]
1)冒号、方括号为英文符号;
2)[ : ]是左开右闭区间;
3)下标:起始值要比终点值小。
【我的理解就是:下标计数可从左往右,也可从右往左,但获取值则是从左往右获取】
>>> words = '今天是第三天' #获取‘第三’
>>> print(words[3:5]) #1)正向
第三
>>> print(words[-3:-1]) #2)逆向
第三
4)当切片时,该值在序列首位或末位时,可以省略起始值或终点值的下标。
示例:
>>> words = '今天是第三天'
>>> print(words[:3],words[:-3])
今天是 今天是
>>> print(words[3:],words[-3:])
第三天 第三天
>>> print(words[:])
今天是第三天
3.3 步长
格式:[起始值下标 : 终点值下标+1 : 步长]
1)步长一般不取1,无意义;
2)逆向输出:步长用负数。
【因为终点值=起始值+步长*n(n为任意实数),所以逆向输出时,起点值大于终点值。】
>>> words = '今日是第三天'
>>> print(words[::2])
今是三
>>> print(words[::-2])
天第日
>>> print(words[::1])
今日是第三天
>>> print(words[::-1])
天三第是日今
>>> print(words[-2:-5:-2])
三是