27 python 定义 列表 序列的基本操作 序列的分片

第一课 定义 列表 # 列表和元组 ---- 序列 # 序列:是数据元素的集合,数据元素可以是数值、字符串、布尔类型、对象等。 # 序列的类型:列表和元组 # 列表: 把一组值简单的放在一起的一种方式 和数组类似 name = "Bill" names = ["Bill", "Mary", "John"] values = ["Bill", True, False, 10,20.5,[1,2,3,4,5]] print(names) # 输出结果为:[‘Bill‘, ‘Mary‘, ‘John‘] 把双引号变成了单引号 这个无关紧要 print(values) # 输出结果为:[‘Bill‘, True, False, 10, 20.5, [1, 2, 3, 4, 5]] for value in values: # 通过for 语句 挨个获取 每一个列表中的值 print(value) ‘‘‘ 输出结果 循环遍历 Bill True False 10 20.5 [1, 2, 3, 4, 5] ‘‘‘ --------------------------------------- 第二课 序列的基本操作 通过索引操作序列元素 (也就是说列表和元组都是可以通过索引操作元素) // 也就可以理解为shell中的三剑客 grep sed awk 这样子的操作 # 序列的基本操作 ---- 通过索引获取序列的值 # 通过一个序号表示一个序列元素值,序号称为索引 # 索引从0开始,Python语言中,索引可以是负数 names = ["Bill", "Mary", "Jack"] print(names[0]) # 输出结果为: Bill print(names[2]) # 输出结果为:Jack s = "I love python" print(s[0]) #输出结果为:I print(s[7]) #输出结果为:p print("Hello"[1]) #输出结果为:e #fourth = input(‘请输入年份:‘)[3] # 比如输入 2019 那么输出的结果就是 9 取 最后的一位数 #print(fourth) # 如果索引小于0 这个在python中是支持的 print(names[0]) print(names[-1]) # Jack print(names[-2]) # Mary print(names[-3]) # Bill #print(names[5]) # 超出索引的范围的话 就会抛出异常 # print(names[-4]) months = [ ‘一月‘, ‘二月‘, ‘三月‘, ‘四月‘, ‘五月‘, ‘六月‘, ‘七月‘, ‘八月‘, ‘九月‘, ‘十月‘, ‘十一月‘, ‘十二月‘, ] year = input(‘年:‘) month = input(‘月(1-12):‘) day = input(‘日(1-31):‘) monthNumber = int(month) monthName = months[monthNumber - 1] print(year,"年",monthName, day,"日") ‘‘‘ 输出结果为: 年:2019 月(1-12):8 日(1-31):4 2019 年 八月 4 日 ‘‘‘ --------------------------------------------- 第三课:序列的分片 // 就是去截取 所想要的东西 // 也就可以理解为shell中的三剑客 grep sed awk 这样子的操作 # 分片(Slicing) # 分片:从一个序列中获取子序列 # 分片有3个参数:startIndex、endIndex和step(步长)开始索引和结束索引都可以省略 这个在后面中例子中讲到了 # 分片可以截取子字符串 url = ‘https://geekori.com‘ print(url[0:5]) # 通过区间来获取一个字符串 输出结果为:https 左闭右开(左要右不要) 可以通过分片截取 字符串的操作 print(url[8:len(url)]) # 输出结果 geekori.com len(url) 获取字符串的长度 print(len(url)) # 输出结果为 19 获取字符串的长度 # 下面我们来看 分片 如何截取 列表 numbers = [1,2,3,4,5,6,7,8] print(numbers[1:3]) # [2,3] print(numbers[0:6]) # [1,2,3,4,5,6] 左闭右开 print(numbers[-3:-1]) # [6,7] print(numbers[-3: 1]) # 当结束索引小于开始索引时,返回空的列表 # 省略开始索引和结束索引 print(numbers[4:len(numbers)]) # [5, 6, 7, 8] print(numbers[4:]) # [5, 6, 7, 8] print(numbers[1:]) # [2, 3, 4, 5, 6, 7, 8] print(numbers[0:5]) # [1, 2, 3, 4, 5] print(numbers[:5]) # [1, 2, 3, 4, 5] print(numbers[:]) # [1,2,3,4,5,6,7,8] 全部省略的话,那么就是取所有的 numbers1 = numbers[:] numbers1[1] = 400 print(numbers) # 设置分片的步长 # 截取奇数序列 print(numbers[0::2]) # [1, 3, 5, 7] # 获取偶数序列 print(numbers[1::2]) # [2, 4, 6, 8] # 获取倒序排列 print(numbers[len(numbers):2:-1]) # [8, 7, 6, 5, 4] len(numbers)开始索引 2为结束索引 -1步长 倒叙的步长 print(numbers[len(numbers):3:-1]) # [8, 7, 6, 5] print(numbers[::-1]) # 复制整个序列,并且将序列倒序排列 [8, 7, 6, 5, 4, 3, 2, 1]

相关推荐