06-Python-列表常用方法
列表
列表的作用: 按索引顺序存储多个值。
列表基础知识
列表的定义
list1 = ['1', 2, 3]
print(list1, type(list1))
列表的转换
list1 = ['1', 2, 3]
print(list1, type(list1))
list2 = list([2, 3, 4])
# 凡是能够被for循环迭代遍历的类型,都可以当作参数传送给list()转换列表
list3 = list("Nihao")
print("type_list2=", type(list2), "type_list3=", type(list3))
list4 = list({'k1':'123','k2':'234'})
print("list4=",list4)
'''
程序运行结果:
['1', 2, 3] <class 'list'>
type_list2= <class 'list'> type_list3= <class 'list'>
list4= ['k1', 'k2']
'''
列表的取值
list4 = list({'k1':'123','k2':'234'})
# 正向取
print(list4[0])
# 反向取
print(list4[-1])
list4 = list({'k1':'123','k2':'234'})
# 索引可以取也可以改,索引不存在则报错
list4[0]='k3'
print(list4)
# 运行结果为['k3', 'k2']
列表的修改
# 列表末尾增加值需要用到append()方法
list4.append('k4')
print(list4)
# 运行结果为['k3', 'k2', 'k4']
# 列表中间插入需要用到insert方法
list4 = list({'k1':'123','k2':'234'})
list4.insert(0,'k0')
print(list4)
# 运行结果为['k0', 'k1', 'k2']
列表的结合
list1 = ['1', '2', '3']
list3 = ['1', '2', '3']
list2 = ['4', '5']
print(list1+list2)
# 运行结果为['1', '2', '3', '4', '5']
list1.extend(list2)
print(list1)
# 运行结果为['1', '2', '3', '4', '5']
list3.append(list2)
print(list3)
# 运行结果为['1', '2', '3', ['4', '5']]
列表的删除
# del方法,没有返回值只是单纯的删除
list1 = ['1', '2', '3']
del list1[0]
print(list1)
# 运行结果为['2', '3']
列表的循环
list1 = ['1','2','3']
print(list1[0:4:2])
# 运行结果为['1', '3']
print(list1[-1:0:-1])
# 运行结果为['3', '2']
list2=list1[:]
print(list2)
# 运行结果为['1', '2', '3'],相当于浅拷贝
列表需要掌握的知识
01-count()
list1 = ['aaa','bb','aaa','ab','jkaj']
print(list1.count('aaa'))
# 运行结果为2
# 返回列表中元素的计数个数
02-index()
list1 = ['aaa','bb','aaa','ab','jkaj']
print(list1.index('bb'))
# 运行结果为1
# 返回第一个索引值
03-clear()
list1 = ['aaa','bb','aaa','ab','jkaj']
list1.clear()
print(list1)
# 运行结果为'[]'
# 清空列表
04-reverse()
list1 = ['aaa','bb','aaa','ab','jkaj']
list1.reverse()
print(list1)
# 运行结果为"['jkaj', 'ab', 'aaa', 'bb', 'aaa'] "
05-sort()
list1 = ['aaa','bb','aaa','ab','jkaj']
list1.sort(reverse=False)
print(list1)
# 运行结果为['aaa', 'aaa', 'ab', 'bb', 'jkaj']
list1 = ['aaa','bb','aaa','ab','jkaj']
list1.sort(reverse=True)
print(list1)
# 运行结果为['aaa', 'aaa', 'ab', 'bb', 'jkaj']
# 按ASCII码先后排序
模拟队列与堆栈
队列和堆栈都是两种数据结构
队列
队列特点:先进先出(FIFO)
l = []
l.append('first')
l.append('second')
l.append('third')
for i in range(len(l)):
l.pop(0)
堆栈
堆栈特点:后进先出(LIFO)
l = []
l.append('first')
l.append('second')
l.append('third')
#先进去的后出来
a = l.pop()
print("a=", a)
b = l.pop()
print("b=", b)
c = l.pop()
print("c=", c)
'''
运行结果为:
a= third
b= second
c= first
'''
06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法 06-Python-列表常用方法