列表和元组
发布时间:2020-12-14 04:43:25 所属栏目:大数据 来源:网络整理
导读:昨日回顾 1 . 基本数据类型概述 int 整数 str 字符串 bool 布尔值 True,False list 列表 [] tuple 元组 () dict 字典 存储key:value set 集合 不重复 bytes 字节 2 . int 整数 bit_length() 求二进制长度 3 . bool 类型 类型转换 结论一: 把x转化成y类型. y(
昨日回顾1. 基本数据类型概述 int 整数 str 字符串 bool 布尔值 True,False list 列表 [] tuple 元组 () dict 字典 存储key:value set 集合 不重复 bytes 字节 2. int 整数 bit_length() 求二进制长度 3. bool 类型 类型转换 结论一: 把x转化成y类型. y() 结论二: 能表示False的数据有: 0,None,"",[],tuple(),set(),{} 4. str 字符串 索引: 下标从0开始的数字. 指示的是字符串中的每一个字符 切片: 从源字符串中截取一部分内容作为新字符串 s[start: end: step] start: 开始 end: 结束. 取不到 step: 步长,默认是1. 每step取一个. 通过符号来控制方向. +从左往右,-从右往左 一大波操作: 1. upper() 转化成大写 2. strip() 去掉两端的空白(空格,n,t) 3. replace(old,new) 把字符串中的old替换成new 4. split() 字符串切割. 返回列表 5. startswith() 判断是否以xxx开头 6. find() 查找 如果找不到返回-1 7. isdigit() 判断是否是数字组成 8. len() 字符串长度 字符串的 遍历(迭代) for c in s: print(c) 迭代:可以一个一个的往外拿 for 变量 in 可迭代对象: ? 今日内容1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表,内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操作(重点) 添加:(记忆1,2) 1. append() 追加 2. insert(位置,元素) 插入指定元素到指定位置 #3.extend(可迭代对象) 迭代添加 把传递进去的参数进行迭代,把每一项添加到列表的末尾 (这个了解) 删除:(记忆1,2) 1. pop(index) 根据索引删除 删除并返回索引项 2. remove(元素) 根据元素删除 删除第一次出现的指定元素,如果元素不存在则报错(,没有返回值,打印的结果是None) #3.del 用切片或者索引删除 全局删除 不常用(是关键字???) #4.clear() 清空 修改: 索引修改 lst[索引] = 元素 坑: 如果步长不是1. 元素的个数必须要和切片的个数一致 查询: for循环. 3. 列表的嵌套 多个列表互相嵌套 4. 列表的其他操作 1. count(‘元素‘) 计数 2. sort() 排序,改变原列表 reverse = True 3. reverse() 翻转,改变原列表 4. len() 求长度 5. 什么是元组 能装对象的对象. 不可变. 一旦确认好. 不可更改 只读列表 可以迭代 6. 元组的嵌套 和列表一样.都可以互相嵌套. 元组的不可变: 指向不变 7. range(重点,难点) 数数 range(n) 数学中的[0,n),前闭后开(前面能取到,后面不能取到) range(m,n) [m,n) range(m,n,p) [m,n) 每隔p取一个 # 重点 for i in range(len(lst)): i 是索引 lst[i] 是元素 预习: 字典(新华字典) 增删改查 字典嵌套 set集合 1. 列表1.1 列表的介绍列表是python的基础数据类型之一,其他编程语言也有类似的数据类型. 比如JS中的组,java中的数组等等. 它是以[ ]括起来,每个元素用‘,‘隔开而且可以存放各种数据类型: lst = [1,‘哈哈‘,"吼吼",[1,8,"百度"],("我","叫","元","组"),"abc",{"我 叫":"dict字典"},{"我叫集合","集合"}] 列表相比于字符串. 不仅可以存放不同的数据类型. 而且可以存放?量的数据. 32位 python可以存放: 536870912个元素,64位可以存放: 1152921504606846975个元素.而且列表是有序的(按照你保存的顺序),有索引,可以切片方便取值. ? 1.2 列表的索引和切片列表和字符串一样也拥有索引: lst = ["麻花藤","王剑林","马芸","周鸿医","向华强"] print(lst[0]) # 获取第一个元素 print(lst[1]) print(lst[2]) lst[3] = "流动强" # 注意. 列表是可以发生改变的. 这里和字符串不一样 print(lst) # [‘麻花藤‘,‘王剑林‘,‘马芸‘,‘流动强‘,‘向华强‘] s0 = "向华强" s0[1] = "美" # TypeError: ‘str‘ object does not support item assignment 不允许改 print(s0) 列表的切片: lst = ["麻花藤","向华强"] print(lst[0:3]) # [‘麻花藤‘,‘马芸‘] print(lst[:3]) # [‘麻花藤‘,‘马芸‘] print(lst[1::2]) # [‘王剑林‘,‘周鸿医‘] 也有步长 print(lst[2::-1]) # [‘?马芸‘,‘麻花藤‘] 也可以倒着取 print(lst[-1:-3:-2]) # 倒着带步长 2. 列表的增删改查# 列表 lst = ["光头强",1,True,{},(1,),{123},["周杰伦","周杰","结论"]] print(lst) # 索引和切片 lst = ["天龙八部","西游记","红楼梦","银平煤","绿平煤"] print(lst[3]) print(lst[-3]) print(lst) print(lst[1:4]) # 切片,原来是什么类型. 得到的就是什么类型 print(lst[-1::-2]) # 倒着切 lst = ["凡人修仙传","诛仙","神墓"] # 添加 append() 追加. 在后面添加 lst.append("看见") lst.append("追风筝的人") # 插入 insert(位置,元素),效率相对比较低 lst.insert(1,"琴帝") # 迭代添加,把传递进去的参数进行迭代. 把每一项添加到列表的末尾 lst.extend(["胡辣汤","猪蹄子","猪头肉","五花肉"]) print(lst) # # 删除 lst = ["斗破苍求","手机","爵迹","满城尽带黄金甲","三生三世十里桃花"] # pop() 默认从后往前删 lst.pop() # pop(索引) 按照索引位置删除 lst.pop(1) # remove(元素) 移除 print(lst.remove("满城尽带黄金甲")) # 当元素不存在的时候会报错,没有返回值(结果是None) # del lst[::2] # 用切片或者索引删除 不常用 lst.clear() # 清空. print(lst) # 修改 lst = ["苏秦","武大","武二","宝元","李诞","池子","王建国"] lst[3] = "松江" # 通过索引修改 index out of range 索引下标越界 print(lst) lst[1:3] = ["麻花藤"] # 迭代更新(不常用) print(lst) lst[1:5:2] = ["麻花藤","码云"] # 坑: 如果步长不是1. 元素的个数必须要和切片的个数一致 print(lst) lst = ["alex","wusir","胡辣汤"] # 把列表中的wusir替换成大写 WUSIR # 首先你要获取到2元素 # 变成大写 # 塞回去(必须要放回去) lst[1] = lst[1].replace("wusir","WUSIR") print(lst) # 查询,列表是一个可迭代对象 lst = ["jay","wlh","lzw","wf"] for item in lst: # item是lst中的每一项 print(item) for i in 123: # ‘int‘ object is not iterable print(i) ? 1. 增注意,list和str是不一样的. lst可以发生改变. 所以直接就在原来的对象上进?了操作 # 末尾添加 append lst = ["麻花藤","林俊杰","周润发","周芷若"] print(lst) lst.append("wusir") print(lst) lst = [] while True: content = input("请输入你要录?的员工信息,输入Q退出:") if content.upper() == ‘Q‘: break lst.append(content) print(lst) # 插入 insert lst = ["麻花藤","张德忠","孔德福"] lst.insert(1,"刘德华") # 在1的位置插入刘德华. 原来的元素向后移动一位 print(lst) # 迭代添加 extend lst = ["王志文","张一山","苦?无涯"] lst.extend(["麻花藤","麻花不疼"]) print(lst) ? 2. 删除
|