#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 = ['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