python 第四章
list 列表
# 列表 -- list 相当于一个容器 # 有序的,可变的,支持索引,可增删改 # 用于存储数据 # 支持的数据类型:str int bool list tuple dict set # 定义一个列表 lst = ["a",123,True,[123],(1,),{"a":"b"},{"2"}] #用,号分割的是一个元素 print(lst) # 输出["a",123,True,[123],(1,),{"a":"b"},{"2"}] # 增加:append insert extend # append 追加,在列表的最后位置添加元素 lst.append("add") print(lst) # 输出['a', 123, True, [123], (1,), {'a': 'b'}, {'2'}, 'add'] # insert 插入,根据索引插入位置(当数据量比较大的时候会影响效率) lst.insert(2,"add2") print(lst) # 输出['a', 123, 'add2', True, [123], (1,), {'a': 'b'}, {'2'}] # extend 迭代添加 除int,bool外都是可迭代类型 lst.extend("可迭代的内容")# str型 print(lst) # 输出['a', 123, True, [123], (1,), {'a': 'b'}, {'2'}, '可', '迭', '代', '的', '内', '容'] lst.extend(("add","3"))# tuple型 print(lst) # 输出['a', 123, True, [123], (1,), {'a': 'b'}, {'2'}, 'add', '3'] # 删:del pop remove clear # del 可通过索引/切片/步长删除 # del 索引删除 del lst[0] print(lst) # 输出[123, True, [123], (1,), {'a': 'b'}, {'2'}] # del 切片删除 del lst[0:3] # 从0开始到3的元素都删除 print(lst) # 输出[[1, 23], (1,), {'a': 'b'}, {'2'}] # del 步长删除 del lst[0:6:2] print(lst) # 输出[123, [1, 23], {'a': 'b'}, {'2'}] # pop 默认删除第一个,通过索引删除 # pop 默认删除第一个 lst.pop() print(lst) # 输出['a', 123, True, [1, 23], (1,), {'a': 'b'}] # pop 索引删除 lst.pop(2) print(lst) # 输出['a', 123, [1, 23], (1,), {'a': 'b'}, {'2'}] # remove 元素名称删除 lst.remove(123) print(lst) # 输出['a', True, [1, 23], (1,), {'a': 'b'}, {'2'}] # clear 清空 lst.clear() print(lst) # 输出[] # 改 可通过索引/切片/步长改 # 索引 lst[1] = "add" print(lst) # 输出['a', 'add', True, [1, 23], (1,), {'a': 'b'}, {'2'}] # 切片,可多可少,可一一对应 lst[1:2] = "b" print(lst) # 输出['a', 'b', True, [1, 23], (1,), {'a': 'b'}, {'2'}] lst[1:4] = "c" #从第一个元素到第四个元素替换成一个元素 print(lst) # 输出['a', 'c', (1,), {'a': 'b'}, {'2'}] lst[1:4] = "d","e","f" #一一对应,修改三个元素 print(lst) # 输出['a', 'd', 'e', 'f', (1,), {'a': 'b'}, {'2'}] lst[1:4] = "a","b","c","d" print(lst) # 输出['a', 'a', 'b', 'c', 'd', (1,), {'a': 'b'}, {'2'}] # 步长 步长不为一,需一一对应 # lst[1:4:2] = "a" # 输出 提示错误ValueError: attempt to assign sequence of size 1 to extended slice of size 2 lst[1:4:2] = "a","b" print(lst) # 输出['a', 'a', True, 'b', (1,), {'a': 'b'}, {'2'}] # 查: # for 循环 # 循环输出每一个元素,需ptint 有缩进 for i in lst: print(i) # 输出 # a # 123 # True # [1, 23] # (1,) # {'a': 'b'} # {'2'} # 只输出最后一个元素,print 无缩进 for i in lst: pass print(i) # 输出{"2"} # 列表嵌套 lst = [1,"alex","春生","小东北","渣弟", ["大黑哥",["常鑫",["自行车"],"大煎饼","掉井盖","三金"], "冯强","海峰",["太白金星","女神","吴超",["肖锋"]]]] print(lst[-1][1][1][0]) a = lst[-1][-1][-2] print(a) # 不管什么类型进行切片的时候获取都到都是源数据类型
tuple 元组
# 元组 -- tuple # 有序,不可变,支持索引 # 用于存储一些重要信息 # 在配置文件中使用 # 是不可变的列表 # 定义方式: tu = (1,"a",True,[1,2,3]) print(tu) # 输出 (1, 'a', True, [1, 2, 3]) # 查询:索引、for循环 # 索引查询 print(tu[0:3]) # 输出 (1, 'a', True) # for 循环 # 元素一一输出 for i in tu: print(i) # 输出 # 1 # a # True # [1, 2, 3] # 只输出最后一个元素 for i in tu: pass print(i) # 输出 [1, 2, 3]
range 范围
# !/usr/bin/python # -*- coding: utf-8 -*- # @File : 03 range.py # @time : 2019-07-0911:58 # @Author : zhangshan33 # range -- 范围 # 特点:顾头不顾尾 # range 在python3和python2中的区别 # python3 中的range是一个可迭代对象,写的怎么样打印出来就是怎样 # 获取成列表: print(list(range(0,10)))# 转成列表的时候顾头不顾尾 # 输出[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # python2 中的range返回的是一个列表 # range获取范围 # 转成列表的时候顾头不顾尾 # 正序 print(list(range(10))) #头不写,默认从0开始,步长不写,默认为1 [0:10:1] # 输出[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(list(range(0,10)))# 从0算到9 # 输出[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print(list(range(0,10,3)))# 按步长输出 # 输出 [0, 3, 6, 9] # 倒序(必须加步长) print(list(range(10,0,-3)))# 倒序输出 # 输出[10, 7, 4, 1] # range 范围一般与for循环使用 # 使用for和range循环打印100~1 for i in range(100,0,-1): print(i) # 输出100-1 # 循环打印1-100 的奇数 for i in range(1,100,2): print(i) # 不能与while使用,会形成死循环 while range(0,10): print(1) # 循环打印三次"请输入姓名"将三次结果打印到列表中 # for循环 lss = [] for i in range(0,3): u = input("请输入姓名:") lss.append(u) print(lss) lss = [] for i in range(3): lst.append(input("请输入姓名:")) print(lss) # while循环 lss = [] count = True while count: u = input("请输入姓名:") lss.append(u) if len(lss) == 3: count =False print(lss)
今日总结
# # 列表:list # 定义方式: # lst = [,,,,] # 有序,可变的,可索引的,支持增删改查 # 作用:存储数据的,支持很多种数据类型 # 列表元素:用,号隔开 # # # # 增: # append 追加 # insert 插入 需要声明位置 尽量不要用 # extend 迭代添加 可迭代内容 # # 删: # pop # 弹 默认删除最后一个元素 # 通过指定索引进行删除 # 删除有返回值,返回被删除的元素 # remover # 移除 通过元素名字进行删除,删除第一个 # clear # 清空 # del lst 默认全部删掉 # del lst[1:10:2] 可通过索引/切片/步长删除 # # # # 改 # 索引 # 切片会补位,多了补位,少了也补位,用逗号隔开 # 步长不为1的必须一一对应,不然会报错 # # 查 # for 循环 # lst = ["abc",123,"efg",True,"您好"] # for i in lst: # print(i) # # # 列表的嵌套 # [[]] # 取值通过索引进行取值,一层一层的进行查找 # 不管什么类型进行切片按照源类型输出 # # # 元组:tuple # 定义的方式: # tu = (1,"alex",[1,2,3]) # 用于存储一些比较重要的信息 # 不可变的列表 # 用于配置文件中 # 有序,不可变 # 不能增删改 # 只能查,支持索引和for查看 # for i in tu: # print(i) # # range--范围 # # python3 中的range是一个可迭代对象 # 写的怎么样打印出来就是怎样 # 获取成列表: # list(range(0,10)) 转成列表的时候顾头不顾尾 # python2 中的range返回的是一个列表 # # range(起始位置,终止位置) -- [起始位置:终止位置] # range(终止位置) -- [:终止位置] # range(起始位置,终止位置,步长) -- [起始位置:终止位置:步长] # # range和for配合使用 # range(起始位置,终止位置) # 终止位置 # 步长
元组小结
来源:https://www.cnblogs.com/zhangshan33/p/11166729.html