python学习 day4 (3月5日)---列表
列表:
容器性数据 有序 可更改 大量数据
一.增
1.追加 append(objcet)
2.索引增加 Insert(index,元素)
3.迭代追加 extend(object)
都是 列表.方法()
#一.增
l = ['zhangsan' , 'lisi' , 'wangwu' , 'zhaoliu' , 'wanger']
#append 追加 后面
l1 = l.append('liuda')
print(l1) # 无返回值 none
print(l) #
l1 = l.append(['tom' , 'jake']) # 加列表
print(l) #['zhangsan', 'lisi', 'wangwu', 'zhaoliu', 'wanger', 'liuda', ['tom', 'jake']]
#insert
l2 = l.insert(-1,'sunqi') # 不能不指定 像 append 加到了 最后一个之前
print(l) # 而不是 成为最后一个其实别的也是第一个之前
#extend 迭代追加
l3 = l.extend('aaaaa')
print(l) #.....'sunqi', ['tom', 'jake'], 'a', 'a', 'a', 'a', 'a']
li.extend(['q,a,w','aaa'])
l3 = l.extend(['a' , 'b' ,'c'])
print(l) #', 'a', 'a', 'a', 'a', 'a', 'b', 'c']#迭代情况下 列表和字符 显示相同
二.删
lis.pop(index) lis.remove(object) lis.clear()
1.pop(index)
2.remove(object)
3.clear() 清空
4.del
del lis.[0] 按列表索引删除
del lis.[::] 按切片删除
del lis 删除列表
#二 删
#pop()
l4 = l.pop()
print(l)
l4 = l.pop(-1)
print(l4) # 有返回值
print(l)
# remove()
l5 = l.remove('a') # 指定值吗
print(l)
#clear()
l.clear()
print(l)
#4.del
l = ['zhangsan' , 'lisi' , 'wangwu' , 'zhaoliu' , 'wanger']
#(1)
del l[0]
print(l)
del l[-1:-4:-1] # 后三个 顾头不顾尾
print(l)
del l[:]
print(l)
三.改
lis [索引/切片(步长)]='xxxx'
# 三. 改
l = ['zhangsan' , 'lisi' , 'wangwu' , 'zhaoliu' , 'wanger']
l[2] = 'guofucheng'
print(l)
l[1:3] = 'aaaaa'# 列表 迭代
print(l)
# 一一对应
l[1:5:2] = '22'
print(l)
四.查(索引切片(步长) for循环)
# 按照索引,按照切片(步长查询) # for 循环 l1 = ['武大', '太白', '吴老师', '武大', '武大'] print(l1[1:3]) l1 = ['武大', '太白', '吴老师', '武大', '武大'] for i in l1: print(i) print(l1)
五.其它方法
len()
index
count
---> len() lis.count('元素') lis.index('元素')
l1 = ['武大', '太白', '吴老师', '武大', '武大'] len print(len(l1)) # 获取列表的长度(总个数) # count 计算某个元素出现的次数 print(l1.count('武大')) # index 通过元素找索引,找到第一个就返回,找不到就报错 print(l1.index('太白')) print(l1.index('武大')) print(l1.index('武大1'))
五.排序
lis.sort() 从小到大排序
lis.sort(reverse=True) 从打到小排序
l1.reverse() 反转
l1 = [4, 5, 3, 9, 8, 7, 6, 1] # sort 从小到大排序 l1.sort() l1.sort(reverse=True) # 从大到小 l1.reverse() # 反转 print(l1)
六.元组 :
容器型数据类型,存储大量数据(),里面内容,隔开
其他语言没有元组,不可以修改,只能查询
# tuple tu1 = (1, 'alex', [1,2,3], True) # 可索引,切片 print(tu1[1]) print(tu1[:3]) # 元组只能查不能改 # 索引,切片(步长) 查询 for i in tu1: print(i)print(len(tu1)) print(tu1.count('alex')) print(tu1.index('alex')) # 可以删除元组 del tu1 print(tu1)
# 元组当真不能改么??? tu1 = (1, 'alex', [1,2,3], True, (1,2,3)) # 儿子不能改,孙子可能改。 tu1[2].append('太白') tu1.append(666) print(tu1)
列表的嵌套:
lis = [1,2,3,[1,2,3,[1,2,[a,2]]]]
print(lis[3][3][2][0])------------->a
print(lis[-1][-1][-1][0])
你的代码只能越学越精简。