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])

你的代码只能越学越精简。

原文地址:https://www.cnblogs.com/Doner/p/10475977.html