Python基础数据类型——列表
Posted Alice
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础数据类型——列表相关的知识,希望对你有一定的参考价值。
一、定义
1、列表由一系列按特定顺序排列的元素组成;
2、用方括号[ ]表示列表,并用逗号分隔其中的元素。
二、属性
1、有序集合;
2、列表是可修改的。
三、操作
1、访问列表元素
索引
要访问列表元素,可指出列表名称,再指出元素的索引,并将其放在方括号内# 请求获取列表元素时,python只返回该元素,不包括方括号和引号 body = [\'head\',\'eye\',\'ear\',\'mouth\'] print(body[0].title()) print(body[3])
访问列表最后一个元素
不知道列表长度时访问最后的元素,可将索引指定为-1,索引-2返回倒数第二个列表元素,以此类推body = [\'head\',\'eye\',\'ear\',\'mouth\'] print(body[-1])
index —— 在列表中查找第一次出现的索引
colors = [\'red\',\'pink\',\'yellow\'] print(colors.index(\'pink\'))
2、在列表中添加元素
append() —— 在列表末尾添加元素
body = [\'head\',\'eye\',\'ear\',\'mouth\'] body.append(\'face\') print(body)
insert() —— 在列表中插入元素
a、在列表任何位置添加新元素,需要指定新元素的索引和值,此操作会将列表中既有的每个元素都右移一个位置;
b、方法insert用于将一个对象插入列表body = [\'head\',\'eye\',\'ear\',\'mouth\'] body.insert(0,\'face\') print(body)
extend() —— 同时将多个值插入到列表末尾
可将这些值组成的序列作为参数提供给方法extend。换言之,可使用一个列表来扩充另一个列表a = [1,2,3] b = [4,5,6] a.extend(b) print(a)
3、从列表中删除元素
del
a、若知道要删除元素在列表中的位置,可以使用del语句;
b、使用del语句删除后,之后无法再访问该元素body = [\'head\',\'eye\',\'ear\',\'mouth\'] del body[3] print(body)
pop()
a、方法pop从列表中删除一个元素,并返回这一元素;
b、pop是唯一既修改列表又返回一个非None值的列表方法
c、pop()方法默认删除列表末尾的元素,并且还能继续使用该元素body = [\'head\',\'eye\',\'ear\',\'mouth\'] popped_body = body.pop() print(body) print(popped_body)
d、弹出列表中任何位置处的元素--需要知道该元素的索引
body = [\'head\',\'eye\',\'ear\',\'mouth\'] MyLove = body.pop(0) print(MyLove.title())
remove()
a、只知道要删除元素的值,不知道值所处的位置,使用remove();
b、remove()从列表中删除元素时,也可以继续使用该元素的值;
c、不同于pop,remove就地修改列表,但不返回任何值;
d、remove()方法只删除第一个指定的值,如果要删除的值在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值body = [\'head\',\'eye\',\'ear\',\'mouth\'] body.remove(\'ear\') print(body)
clear()
就地情况列表内容,返回一个空列表body = [\'head\',\'eye\',\'ear\',\'mouth\'] body.clear() print(body)
4、修改列表元素
# 可以修改任一列表元素的值,需要指定列表名、要修改元素的索引、再指定该元素的值
body = [\'head\',\'eye\',\'ear\',\'mouth\']
body[2] = \'face\'
print(body)
5、排序
sort() —— 对列表永久性排序使用sort()方法
方法sort用于对列表就地排序,即对原来的列表进行修改,使其元素按顺序排列,而不是返回排序后的列表的副本
a)按照字母顺序排序tool = [\'ppt\',\'excel\',\'csv\',\'word\'] tool.sort() print(tool)
b)按照与字母顺序相反的顺序排列列表元素,只需向sort()方法传递参数reverse=True
tool = [\'ppt\',\'excel\',\'csv\',\'word\'] tool.sort(reverse=True) print(tool)
sorted()
sorted()可以按特定顺序显示列表元素,但不影响它们在列表中的元素排列顺序tool = [\'ppt\',\'excel\',\'csv\',\'word\'] print(sorted(tool)) print(tool)
reverse()
a、方法reverse按相反的顺序排列列表中的元素;
b、永久性修改列表元素的排列顺序,但随时可以恢复到原来的排序,只需再次调用reverse()a = [1,2,3] print(a.reverse())
6、切片[ : ]
1)如没有指定第一个索引,将自动从列表开头开始提取;
2)要让列表终止于列表末尾,类似;
3)负数索引可以输出列表末尾的任何切片
colors = [\'red\',\'yellow\',\'white\',\'green\',\'pink\']
print(colors[0:3])
print(colors[1:4])
print(colors[:4])
print(colors[2:])
print(colors[-3:])
7、复制列表
切片[ : ]
可创建一个包含整个列表的切片[ : ],即复制整个列表my_color = [\'red\',\'yellow\',\'white\',\'green\',\'pink\'] your_color = my_color[:] print(my_color) print(your_color)
copy
a = [1,2,3] b = a.copy() b[1]=4 print(a)
list()
a = [1,2,3] print(list(a))
8、遍历列表——for循环
a、for循环中,每行缩进的代码都是循环的一部分,且将针对列表中的每个值都执行一次;
b、for循环后,没有缩进的代码都只执行一次,而不会重复执行
colors = [\'red\',\'yellow\',\'white\']
for color in colors:
print(color.title()+ \', is beautiful\')
print(\'I love\'+\' \'+color.title())
9、其他列表方法
count( )——计数
方法count计算指定的元素在列表中出现了多少次colors = [\'red\',\'pink\',\'yellow\'] print(colors.count(\'red\'))
len( )——确定列表长度
tool = [\'ppt\',\'excel\',\'csv\',\'word\'] print(len(tool))
range()——创建数字列表
a、range()函数# 下例range()只打印1~4,从指定是第一个值开始数,并在达到指定的第二个值后停止,输出不包含第二个值 for value in range(1,5): print(value)
b、使用range()创建数字列表
1)要创建数字列表,可使用函数list()将range()的结果直接转换成列表;
2)如果将range()作为list()的参数,输出将作为一个数字列表;numbers = list(range(1,6)) print(numbers)
3)使用range()时,还可以指定步长
numbers = list(range(2,11,2)) print(numbers)
4)使用range()几乎能创建任何需要的数字集
# 创建一个列表,其中包含10个整数(即1~10)的平方 squares = [] for value in range(1,11): squares.append(value**2) print(squares)
max()
# 找出数字列表的最大值 digits = [1,2,3,4,5] print(max(digits))
sum()
# 找出数字列表的总和 digits = [1,2,3,4,5] print(sum(digits))
- list()——将序列转化为列表
以上是关于Python基础数据类型——列表的主要内容,如果未能解决你的问题,请参考以下文章