Python 列表List使用方法和示例
# -*- coding: utf-8 -*-
“””
—– List 列表测试 ——
列表是Python中内置有序、可变序列,列表的所有元素放在一对中括号“[]”中,并使用逗号分隔开;
当列表元素增加或删除时,列表对象自动进行扩展或收缩内存,保证元素之间没有缝隙;
在Python中,一个列表中的数据类型可以各不相同,可以同时分别为整数、实数、字符串等基本类型,甚至是列表、元组、字典、集合以及其他自定义类型的对象
@author: 枫之影 www.py666.cn
“””
- 列表常用方法
方法 | 说明 |
lst.append(x) | 将元素x添加至列表lst尾部 |
lst.extend(L) | 将列表L中所有元素添加至列表lst尾部 |
lst.insert(index, x) | 在列表lst指定位置index处添加元素x,该位置后面的所有元素后移一个位置 |
lst.remove(x) | 在列表lst中删除首次出现的指定元素,该元素之后的所有元素前移一个位置 |
lst.pop([index]) | 删除并返回列表lst中下标为index(默认为-1)的元素 |
lst.clear() | 删除列表lst中所有元素,但保留列表对象 |
lst.index(x) | 返回列表lst中第一个值为x的元素的下标,若不存在值为x的元素则抛出异常 |
lst.count(x) | 返回指定元素x在列表lst中的出现次数 |
lst.reverse() | 对列表lst所有元素进行逆序 |
lst.sort(key=None, reverse=False) | 对列表lst中的元素进行排序,key用来指定排序依据,reverse决定升序(False),还是降序(True) |
lst.copy() | 返回列表lst的浅复制 |
# 列表创建与删除
# 使用“=”直接将一个列表赋值给变量即可创建列表对象
ls0=[] #或 list() # 创建空列表
ls=[‘a’,’b’,’c’]
print(ls)
# 也可以使用list()函数将元组、range对象、字符串或其他类型的可迭代对象类型的数据转换为列表
ls= list((1,2,6,8))
print(ls)
ls=list(range(1,10,2))
print(ls)
# 列表索引
ls=[‘aa’,’bb’,’cc’,’dd’]
print(ls[1]) #输出第二个元素 bb
print(ls[-1]) #输出最后个元素 dd
# 切片
# 切片适用于列表、元组、字符串、range对象等类型
# 可以使用切片来截取列表中的任何部分,得到一个新列表,也可以通过切片来修改和删除列表中部分元素
# 甚至可以通过切片操作为列表对象增加元素
print(ls[1:]) #打印第一个元素之后的内容
print(ls[:-1]) #打印最后一个元素之前的内容
print(ls[::-1]) #倒序输出
# 重复
ls2=ls*2
print(ls2)
# 连接 列表元素的增加
# 可以使用“+”运算符将元素添加到列表中
# 严格意义上来讲,这并不是真的为列表添加元素,而是创建了一个新列表,并将原列表中的元素和新元素依次复制到新列表的内存空间。
# 由于涉及大量元素的复制,该操作速度较慢,在涉及大量元素添加时不建议使用该方法
ls2=ls+[‘ee’,’ff’]
print(ls2)
# 赋值
ls2[0]=’uu’
print(ls2)
# 成员操作赋
if ‘bb’ in ls:
print(“bb in ls”)
# 迭代:[for循环遍历]
for i in ls:
print(i)
# 使用列表对象的append()方法在当前列表尾部追加元素
ls.append(‘qq’)
# 使用列表对象的extend()方法可以将另一个迭代对象的所有元素添加至该列表对象尾部
# 通过extend()方法来增加列表元素也不改变其内存首地址,属于原地操作
ls.extend([‘vv’,’yy’])
print(ls)
# insert()方法将元素添加至列表的指定位置
# 应尽量从列表尾部进行元素的增加与删除操作。
# 列表的insert()可以在列表的任意位置插入元素,
# 但由于列表的自动内存管理功能,insert()方法会引起插入位置之后所有元素的移动,这会影响处理速度
ls.insert(3, ‘tt’) # 在下标为3的位置插入元素tt
print(ls)
# 使用del命令删除列表中的指定位置上的元素
del ls[1] #删除下标1位置的元素
print(ls)
# pop()方法删除并返回指定位置(默认为最后一个)上的元素
# 如果给定的索引超出了列表的范围则抛出异常
ls.pop()
print(ls) # 删除列表最后一个
ls.pop(1)
print(ls) # 删除下标1位置的元素
# remove()方法删除首次出现的指定元素,如果列表中不存在要删除的元素,则抛出异常
ls.remove(‘aa’)
# index()方法获取指定元素首次出现的下标,若列表对象中不存在指定元素,则抛出异常
i=ls.index(‘dd’)
#i=ls.index(‘ddww’)
print(“ls.index(‘dd’)=%d” %(i))
# count()方法统计指定元素在列表对象中出现的次数
ls.append(‘vv’)
i=ls.count(‘vv’)
print(“ls.count(‘vv’)=%d” %(i))
# sort()方法进行原地排序
ls.sort() #默认是升序排序
ls.sort(reverse = True) #降序排序
print(ls)
# 使用内置函数sorted()对列表进行排序并返回新列表
ls2=sorted(ls)
print(ls2) #默认是升序排序
# reverse()方法将元素原地逆序
ls.reverse()
# 使用内置函数reversed()对列表元素进行逆序排列
ls2=reversed(ls)
# 乱序
import random
random.shuffle(ls)
print(ls)
# list 分割字符串
s = “;”.join(ls) #使用分号分隔字符串
print(s)
# 字符串按指定分隔符生成list
ls2=s.split(‘;’)
print(ls2)
# 删除整个列表
del ls
print(‘———— END ————‘)
近期评论