python_列表的增删查改以及嵌套

#coding=utf-8
#列表的增删查改
li =['alsc','王学长','女生',[1,23,3]]
# 列表的增
# 增加在最后 append
# 插入 insert
#迭代加入 extend
li.append('日天')
print(li)
li.append(1)
print(li)
# 1.持续增加
# 2.输入Q退出
while 1:
    a = input("Please input 员工 name:")
    if a.strip().upper()=='q':#排除空格和大小写的干扰
        #strip 去除首尾的空格或者换行符//默认
        print("退出成功!")
        break
    else:
        li.append(a)
        print("新增员工的姓名为:",a)
        print("总员工数量:",li)
#insert 插入
li.insert(4,"王帅哥")#代表在第四个位置插入这个值
print(li)
# 迭代增加 extend
li.extend('123')#迭代加入,加入每一个元素
print(li)
li.extend([1,2,3])
print(li)
#删除
#pop 根据位置来删除
#remove 根据元素来删除
#clear 清空列表
# del li 删除列表

#根据索引(位置)删除
name = li.pop(1)#代表位置,返回值为删除的哪个值
name = li.pop()#默认删除最后一个
print(name,li)
#根据元素删除
li.remove('王帅哥')#无返回值
print(li)
#清空列表
li.clear()#清空list
print(li)
#删除列表
del li
print(li) #已经没有了,所以不能打印
# 能根据索引来删除数据
del li[3:] #同字符串的切片用法相同
print(li)

#改

li[0]='男神' #根据索引改,直接赋值即可
print(li)
print(li)
li[0:1]="二狗帅气"
 #切片去改,数值代表从某位到某位覆盖的位置,
#并且迭代的入
print(li)
# 查
for i in li:
    print(i)
print(li[0:2])
#公共方法
print(li)
l = len(li) #长度
print(l)
num = li.count("王学长")#返回出现的次数
print(num)
print(li.index("王学长"))#index找出索引
#正向排序 sort
li = [1,2,6,9,4,8]
li.sort()
print(li)
#  逆向排序
li.sort(reverse=True)#Ctrl + b 快速查看帮助
print(li)
# 反转
li.reverse()
print(li)

# 列表的嵌套
li = ['xuezhang','王学长','高学长',["marry",'lengt','wright',99]]
print(li[1][0]) #嵌套查找
name = li[0].capitalize()
print(name)
li[0] = name
print(li)
li[2]=li[2].replace('','日天')#replace代表替换
print(li)
li[3][0]=li[3][0].upper()#upper转换为大写
print(li)
li[3][3]  = 88
print(li)
# 元祖的嵌套
# 元祖为只读列表,可单独查询,可循环查询,可切片查询
#儿子不能改孙子可以改(元祖中的列表可以更改,可以任意操作)
tu = (1,2,3,"666",[5,6,7,'wangxuezhang'],'王学长')
print(tu[0])
print(tu[3][0])
tu[4][0]=0
print(tu)
tu[4][3] = tu[4][3].upper()
print(tu)
tu[4].append("888")
print(tu)
#join
# 列表转换为字符串list---->str   join
# join 可以把可迭代对象分割(列表,元祖,字符串等等)
s = '王学长'.capitalize()
li =['alsc','王学长','女生']
s1 = "-".join(li)
print(s1)
#str------>list  split()
#range  [1,2,3,4,5,6,7,8,9...100....200..]
# 顾头不顾尾
for i in range(0,100,2):
print(i)
#读取出嵌套list的所有内容
li = [1,2,3,4,5,[123,'taibai','王学长'],"吾问无为谓"]
for i in li:
    if type(li[i]) == list:#利用type
        for j in li[i]:
            print(j)
    else:
        print(li[i])
# capitalize() 首字母大写函数
# replace('高','日天') 替换
# upper() 大写
# 增加在最后  append
# 插入 insert
#迭代加入 extend
# 增加在最后  append
# 插入 insert
#迭代加入 extend
原文地址:https://www.cnblogs.com/wxzbk/p/9531703.html