列表
列表的介绍
列表是python的基础数据类型之一 ,其他编程语言也有类似的数据类型.
比如JS中的数 组, java中的数组等等. 它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型:
ls = [1,2,2,2,2,3,['a','s']]
列表相比于字符串,不仅可以存放不同的数据类型.而且可以存放大量的数据.32位python
可以存放:536870912个元素,64位可以存放:1152921504606846975个元素.而且列表是有序的
(按照你保存的顺序)有顺序,可以切片方便取值
列表的索引和切片
列表和字符串一样也拥有索引:
列表:
lst = ['刘德华','周润发','周杰伦','向华强'] print(lst[0]) #输出第一个字符 print(lst[1]) #输出第二个字符
对列表进行修改:
lst[0] = '李'
print(lst)
注意:列表是可以进行修改的,这里和字符串不一样
字符串:
a = 'asdfgh' print(a[0])#输出第一个字符
对数组进行修改
a[0] = '李'
print(a)
结果:
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/untitled2/day01.py", line 149, in <module>
a[0] = '李'
TypeError: 'str' object does not support item assignment
切片:
lst = ['刘德华','周润发','周杰伦','向华强'] print(lst[1:3]) #['周润发', '周杰伦'] print(lst[3::-1]) #['向华强', '周杰伦', '周润发', '刘德华']
列表的增删改查:
增加:
增加的三种方法
lst = [1,2,'a'] lst.append("wusir") #追加 在末尾添加内容 print(lst)
[1, 2, 'a', 'wusir'] lst.insert(2,'包夜') #插入 第一个是要插入位置的下标,第二个是要插入的内容 print(lst) [1, 2, '包夜', 'a']
lst.extend([1,2,3]) #扩展 --- 迭代添加 整型和布尔值不能迭代 print(lst) [1, 2, 'a', 1, 2, 3]
扩展:
# lst1 = [1,2,3]
# lst2 = [4,5,6]
# lst3 = lst1 + lst2 # 列表合并 开辟了一块空间
删除:
lst = [1,2,'包夜','a','b','c'] lst.remove(1) #指定内容删除 print(lst)
del lst[2] #指定下标删除 print(lst)
lst.clear() #清空列表 print(lst)
lst.pop(1) #指定下标删除,若不指定默认删除最后一个 print(lst)
修改:
lst = [1,2,'包夜','a','b','c'] lst[1]='a' #指定下标进行修改 print(lst) lst[1:4]=1,2,3 #切片进行修改 print(lst) lst[0:5:2]=6,3,4 #指定步长进行修改,输入内容的数量要和步长数相吻合 print(lst)
查
利用for循环进行查询
列表的其他操作
# sort排序升序 lst.sort() print(lst)
# reverse翻转 # sort(reverse=True)降序 lst.sort(reverse=True) print(lst)
# count统计 ls = lst.count('a') print(ls)
# index通过内容获取下标 la = lst.index('e') print(la)
列表的嵌套
lst = [1,2,34,[45,5,['年后啊']]]
print(lst[3][2][0])
结果:
年后啊
采用降维操作
lst = [1,'太白','wusir',['麻花疼',['可口可乐'],'王健林']] # 找到太白的白字 print(lst[1][1]) #将wusir拿到,然后首字母大写 在扔回去 s = lst[2] print(s) s = s.capitalize() lst[2] = s print(lst) # 把太白换成太黑 lst[1].replace('白','黑') print(lst[1].replace('白','黑')) # 在可口可乐后边添加一个雪碧 lst[3][1].append('雪碧') print(lst)
列表不能循环添加
li = [1,2,3,4,5,6] for i in li: li.append(7) print(li) # [1,2,3,4,5,7,7,7,7,...]
循环添加容易变成死循环
列表使用for循环删除元素, for循环的计数删除不干净
li = [12,2,3,4,5] for i in li: li.remove(i) print(li) # 结果[2,4]
for i in li: li.pop() print(li) 结果:
[12, 2]
li = [1,2,3,4,5] for i in li: del li[-1] print(li) 答: [1, 2]
能够删除成功的
for i in range(len(li)): # 行 li.pop() print(li) 答:[] li = [1,2,3,4,5] # 行 l2 = [] for i in li: l2.append(i) for j in l2: li.remove(j) print(li) for i in li: li.clear() # 实在不行的 print(li)
posted on 2019-01-02 18:41 🐳️南栀倾寒🐳️ 阅读(136) 评论(0) 编辑 收藏 举报