python列表的详细操作#附有实例

列表是最常用的Python数据类型,也是Python中最基本的数据结构,只要在实际应用中,使用列表编程非常频繁。

一:创建列表

1.1.创建普通的列表

只要把逗号分隔的不同的数据项使用方括号括起来

list  = []
list1 = ['Google', 'TengXun', 'Baidu', 'Alibb']
list2 = [1, 2, 3, 4, 5 ]
list3 = ["hello", "hi", "how are you", "that's good"]

1.2.创建数值列表

使用list()函数将range()函数的结果转换为列表

numlist = list(range(10))
print(numlist)

结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

range(param1, param2, param3) 第三个参数param3可以指定步长

numlist = list(range(0, 11, 2))
print(numlist)

结果:
[0, 2, 4, 6, 8, 10]

1.3.列表解析创建列表

列表解析 将for 循环和创建新元素的代码合并成一行,并自动附加新元素

squares = [value**2 for value in range(1, 11)]
print(squares)
# 注意for value in range(1, 11)末尾没有冒号

结果:
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

二:列表操作

2.1.访问列表

通过索引访问
列表第一个元素的索引是0而不是1
列表最后一个元素可以通过索引-1访问

names = ['小明','小红','john', 'ben', 'kitty']
print(names[0])
print(names[-1])
print(names[3])

结果:
小明
kitty
ben

2.2.修改列表元素

通过元素的索引修改,list[index] = ‘new_element’

# 修改列表元素的方法和访问元素的方法一样,通过索引去修改
motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)
motorcycles[0] = 'ducati'
print(motorcycles)

结果:
['honda', 'yamaha', 'suzuki']
['ducati', 'yamaha', 'suzuki']

2.3.对列表添加元素

1.使用方法append()将元素添加到列表末尾,list.append
2.使用方法insert()将元素插入到列表的指定索引位置,list.insert(new_index, element)

motorcycles = ['honda', 'yamaha', 'suzuki']
motorcycles.append('sanlin')
print(motorcycles)
motorcycles.insert(1, 'motor')
print(motorcycles)

结果:
['ducati', 'yamaha', 'suzuki', 'sanlin']
['ducati', 'motor', 'yamaha', 'suzuki', 'sanlin']

2.4.从列表删除元素

1.使用del语句删除元素,需要指定索引,del list[del_index]
2.使用方法pop()删除元素,并且返回该值,不指定索引时删除列表末尾的元素,list.pop([pop_index])
3.使用方法remove()可以根据值删除元素,list.remove(element)

# del函数
motorcycles = ['ducati', 'motor', 'yamaha', 'suzuki', 'sanlin']
del motorcycles[1]
print(motorcycles)

#pop方法
pop_motorcycle = motorcycles.pop() # 不指定索引时删除最后一个元素
print(pop_motorcycle)
print(motorcycles)

pop_motorcycle1 = motorcycles.pop(1) #指定删除的索引
print(pop_motorcycle1)
print(motorcycles)

del motorcycles #是将整个列表删除,再次访问会报错
print(motorcycles)

#remove方法
pets = ['dog', 'cat', 'duck', 'squirrel']
pets.remove('duck')
print("属于宠物的有:")
for pet in pets:
	print(pet)

结果:
['ducati', 'yamaha', 'suzuki', 'sanlin']
sanlin
['ducati', 'yamaha', 'suzuki']
yamaha
['ducati', 'suzuki']
NameError: name 'motorcycles' is not defined

属于宠物的有:
dog
cat
squirrel

三:组织列表

3.1.对列表进行永久性排序

  1. 使用方法sort()对列表进行永久性排序
  2. list.sort(reverse = True)按与字符顺序相反的顺序排列列表元素
cars = ['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
print("排序前:" + str(cars))

# 1. 使用方法sort()对列表进行永久性排序
cars.sort()
print("使用sort排序后:" + str(cars))

# 2. list.sort(reverse = True)按与字符顺序相反的顺序排列列表元素
cars.sort(reverse = True)
print("使用sort带reverse选项后:" + str(cars))

结果:
排序前:['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
使用sort排序后:['audi', 'bwm', 'honda', 'lexus', 'toyata', 'vx']
使用sort带reverse选项后:['vx', 'toyata', 'lexus', 'honda', 'bwm', 'audi']

3.2.对列表进行临时排序

使用函数sorted()对列表进行临时排序

cars = ['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
print("排序前:" + str(cars))
print("使用函数sorted()后:" + str(sorted(cars)))
print("再次查看列表:" + str(cars))

结果:
排序前:['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
使用函数sorted():['audi', 'bwm', 'honda', 'lexus', 'toyata', 'vx']
再次查看列表:['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']

3.3.对列表进行倒着排序

list.reverse()倒着打印列表, 永久性地修改列表元素排序顺序,
再次调用list.reverse可恢复原来排序顺序

cars = ['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
print("排序前:" + str(cars))
print("倒着排序后:" + str(cars))
print("再次调用reverse:" + str(cars))

结果:
排序前:['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
倒着排序后:['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
再次调用reverse:['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']

3.4.对列表进行统计

函数len() 确定列表的长度
min() 统计列表最大值元素
max() 统计列表最小值元素
sum() 统计列表累加和

cars = ['bwm', 'audi', 'lexus', 'honda', 'vx', 'toyata']
print("cars 数量为:" + str(len(cars)))

结果:
cars 数量为:6
发布了45 篇原创文章 · 获赞 38 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/muchong123/article/details/104704334