列表

列表的介绍       

列表是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  &#128051;️南栀倾寒&#128051;️  阅读(136)  评论(0编辑  收藏  举报

导航