#不同于del,pop()函数可以返回删掉的值 li=["世","界","最","帅"] v1=li.pop(2) #可以指定删除位置,默认是最后一个 print(v1) #输出: 帅 print(li) #输出: ['世', '界', '最']浅谈“列表”使用方法

一、基本功能和格式

# list 列表

li=[1,2,3,"123","456"]  

li=[1,2,3,"123","456",["张三","李四","王五"]] 

#列表是一种“集合”,类似于C中的数组,最大区别在于C中的数组有类型,数组元素属性唯一;但是列表中可以同时包含数字、字符串、布尔值和嵌套列表

1.支持索引取值和切片取值

1 li=[1,2,3,"123","456"]
2 print(li[0])
3 print(li[0:4])  #切片取值仍然是左闭右开

输出:

1
[1, 2, 3, '123']

2.列表元素可以被修改

li = [1,2,3,"123","456",["张三","李四","王五"]]
li[1] = 22 #将li[1]替换成22
print(li)  #[1, 22, 3, '123', '456', ['张三', '李四', '王五']]
li[1] = [11,22,33]  #将li[1]替换成[11,22,33]
print(li)     #[1, [11, 22, 33], 3, '123', '456', ['张三', '李四', '王五']]
del li[1]  #删除li[1]
print(li)   #[1, 3, '123', '456', ['张三', '李四', '王五']]
li[1:3]=[22,33]  #切片替换一部分内容
print(li)    #[1, 22, 33, '456', ['张三', '李四', '王五']]

输出:

[1, 22, 3, '123', '456', ['张三', '李四', '王五']]
[1, [11, 22, 33], 3, '123', '456', ['张三', '李四', '王五']]
[1, 3, '123', '456', ['张三', '李四', '王五']]
[1, 22, 33, '456', ['张三', '李四', '王五']]

二、进阶功能

1.字符串转换成列表

li = "abcdef"
new_li = list(li)
print(new_li)  # 输出: ['a', 'b', 'c', 'd', 'e', 'f']

2.列表转换成字符串

li = [1,2,3,"aaa","bbb"]
s=""
for i in li:
    s+=str(i)
print(s)  # 输出:123aaabbb

如果列表中都是字符串

li = ["aa","bb","cc"]
s=""
new_li=s.join(li)
print(new_li)  # 输出:aabbcc

3. x.append() 功能:在列表最后追加一个新的元素

li = ["aa","bb","cc"]
li.append(111)
print(li)  #['aa', 'bb', 'cc', 111]

x.append()函数前不必再写新的列表名,直接追加到原来的列表后面

也可以实现列表中的所有字符串元素转为数字元素

li=["111",222]
new_li=[]
for i in li:
    new_li.append(int(i))
print(new_li)  #输出:[111, 222]

4. x.clear()函数 功能:清空列表

li=["111",222]
li.clear()
print(li) #输出:[]

函数前不用再写新的列表名,直接清空原列表

5. x.copy()  功能:复制列表

li=["111",222]
new_li = li.copy()
print(new_li)  #输出:['111', 222]

6. x.count 功能:统计列表中某个元素的出现次数

li=[1,2,3,4,4,'5','5','5']
i=li.count(4)
print(i)    #输出:2
i=li.count('5')
print(i)  #输出:3

7. x.extend() 功能:追加若干个新的元素

li=["魔镜","魔镜"]
le=["","",""]
li.extend(le)
print(li)  # 输出:['魔镜', '魔镜', '我', '最', '帅']

注意区别与append

li=["魔镜","魔镜"]
le=["","",""]
# 与 li.append() 相比,是将le中的每一个元素追加到li后面,相当于
for i in le:
    li.append(i)
print(li)  #输出:['魔镜', '魔镜', '我', '最', '帅']
li=["魔镜","魔镜"]
le=["","",""]
li.append(le)
print(li)  #输出 :['魔镜', '魔镜', ['我', '最', '帅']]

8. x.index() 功能:根据值找索引位置

li=['1','2','3','4','3','5','6']
print(li.index('1')) #输出 0
print(li.index('3')) #输出 2 如果元素中出现多次参数值,则从做往右,只取第一个位置
print(li.index('6')) #输出 5
#也可以指定查找的起始位置和停止位置。第二个参数是起始位置,第三个参数是结束位置
li=['1','2','3','4','3','5','6']
print(li.index('3',3,5))  #输出:4

如果列表中没有index的参数,报错。

9. x.insert() 功能:在制定位置插入一个元素

#insert有两个参数,第一个是插入位置,第二个是插入内容
li=["","","",""]
li.insert(2,"")
print(li)  # 输出:['世', '界', '我', '最', '帅']

10. x.pop() 功能:删除指定位置元素

#不同于del,pop()函数可以返回删掉的值
li=["","","",""]
v1=li.pop()
print(v1)  #输出: 帅
print(li)   #输出: ['世', '界', '最']
#不同于del,pop()函数可以返回删掉的值
li=["","","",""]
v1=li.pop(2)  #可以指定删除位置,默认是最后一个
print(v1)  #输出: 帅
print(li)   #输出: ['世', '界', '最']

11. x.remove()  功能:删除列表中的指定值,左边优先

li=[11,22,33,44,55,22]
li.remove(22)
print(li) #输出:[11, 33, 44, 55, 22]

12. x.reverse() 功能:将当前列表进行反转

li=[11,22,33,44,55,22]
li.reverse()
print(li)  #输出 :[22, 55, 44, 33, 22, 11]

13. x.sort() 功能:从小到大排序;x.sort(reverse=True):从大到小排序

li=[11,22,44,33,44,55]
li.sort()
print(li)  #输出:[11, 22, 33, 44, 44, 55]
li.sort(reverse=True)
print(li)  #输出:[55, 44, 44, 33, 22, 11]

 

posted @ 2018-10-23 09:54  理工—王栋轩  阅读(306)  评论(0编辑  收藏  举报