万恶之源-python加深,,1.列表1.1列表的


1.列表

1.1列表的含义:

? 它是以[]括起来,每个元素用""引起来,用逗号隔开而且可以存放各种类型的数据。

li=["樊大爷",王立军","我",[1,3,5],"abc"]

1.2列表的作用

? 列表不但可以存放不同类型的数据,而且还可以存放大量的数据。而且列表是有序的。可以按照你保存的顺序,有索引,可以方便取值。

2.1列表的索引和取片

2.1.1列表和字符串一样也有索引

li=["马化腾","马云","刘强东","李彦宏","雷军"]print=li[0]  ['马化腾']#获取第一个元素print=li[1]  ['马云']li[2]="樊大爷"  #列表是可以发?改变的. 这?和字符串不?样print(li)s="王健林"s[1]="帅"    #字符串不允许发生改变print(s)

2.1.2列表的切片

li=["马化腾","马云","刘强东","李彦宏","雷军"]print(li[0:2])  ['马化腾','马云']print(li[1:3])  ['马云','刘强东']print(li[::2])  ['马化腾','刘强东','雷军']print(li[-1:-3:-2]) ['雷军']

2.2 列表的增删改差

2.2.1 增

    列表(list)和字符串(str)是不一样的,所以列表可以在原来对象上进行操作
append(追加,添加,在末尾添加的操作。)         insert(可以指定位置插入{用索引})   extend 扩展,迭代添加 li = ["马化腾", "林俊杰", "周润发", "周芷若"] li.append("樊大爷") print(li)  li = ["马化腾", "林俊杰", "周润发", "周芷若"] li.insert(1,"张无忌") # 在1的位置插入张无忌. 原来的元素向后移动一位 print(li)  li = ["王志文", "张?山", "苦海无涯"] li.extend(["马化腾","马云"])   #在列表的最后面添加 print(li)

2.2.2 删

pop删除最后?一个,  remove删除指定元素,  clear清空list,  del切?片删除li = ["马化腾", "王健林", "李嘉诚", "王富贵"]li.pop()        #默认删除最后一个print(li)li.pop(2)        #删除2号元素print(li)li = ["马化腾", "王健林", "李嘉诚", "王富贵"]li.remove("王健林")        #删除指定元素print(li)li.clear()      #清空listprint(li)del li[1:3]   #切片删除print(li)

2.2.3 修改

li = ["太白", "太黑", "五色", "银王", "日天"]li[1] = "太污" # 把1号元素修改成太污 print(lst)li[1:4:3] = ["麻花藤", "哇靠"]   #切?片修改也可以. 如果步?长不不是1, 要注意元素的个数print(li)  #没结果li[1:4] = ["李嘉诚"]   # 如果切?没有步?或者步长是1. 则不?关?个数print(li)

2.2.4查询,列表是一个可迭代对象,所以可以进行for循环

    for i in li:            print(i)

2.2.5其他操作

lst = ["太白", "太黑", "五色", "银王", "?天", "太白"] c = lst.count("太白") # 查询太白出现的次数 print(c)lst = [1, 11, 22, 2]lst.sort() # 排序. 默认升序 print(lst)lst.sort(reverse=True) # 降序 print(lst)

3.1列表的嵌套

采?用降维操作.?一层?一层的看就好.

lst = [1, "太白", "wusir", ["?虎疼", ["可?可乐"], "王剑林"]]找到wusirprint(lst[2])找到太白和wusirprint(lst[1:3]) # 找到太?白的?白字print(lst[1][1])将wusir拿到. 然后?首字母?写. 再扔回去 s = lst[2]s = s.capitalize()lst[2] = sprint(lst)简写lst[2] = lst[2].capitalize() print(lst)

2.元组

2.1元组的含义

? 俗称不可变的列表.?被成为只读列表, 元组也是python的基本数据类型之一, 用小括

号括起来, ??可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. 但就是不能改.

tu=(1, "太白", "李白", "太黑", "怎么黑")print(tu)print(tu[0])print(tu[2])print(tu[2:5]) # 切片之后还是元组

2.2for遍历循环

? for el in tu:
? print(el)

2.3元组的嵌套

tu = (1,2,3,(4,5,6,[6,7,8,(9,11,10),"abc"],"ABC"))print(tu[3][3][3][1])  11       print(tu[-1][-2][-1]        abc

2.4其他

? 元组中如果只有?个元素. ?定要添加?个逗号, 否则就不是元组

tu = (1,)print(type(tu))

?

万恶之源-python加深

评论关闭