非数字型变量
字符串
列表
元组
字典
在python中,所有非数字型变量都支持以下特点:
- 都是一个序列,也可以理解为一个容器
- 取值[]
- 遍历 for in
- 计算长度,最大/最小值,比较,删除
- 链接 + 和重复 *
- 切片
列表的定义
List 列表,是python中国呢使用最频繁的数据类型
专门用于存储一串信息
列表用[]定义,数据之间用,分割
列表的索引是从0开始
列表的常用方法
分类 | 方法/函数 | 说明 |
---|---|---|
增加 | 列表.insert(索引,数据) | 在指定位置插入数据 |
列表.append(数据) | 在末尾追加数据 | |
列表.extend(列表2) | 将列表2的数据追加到列表 | |
修改 | 列表[索引]=数据 | 修改指定索引的数据 |
删除 | del 列表[索引] | 删除指定索引的数据 |
列表.remove(数据) | 删除第一个出现的指定数据 | |
列表.pop | 删除末尾的元素 | |
列表.pop(索引) | 删除指定索引的数据 | |
列表.clear | 清空列表 | |
统计 | len(列表) | 列表长度 |
列表.count(数据) | 统计数据在列表中出现的此时 | |
排序 | 列表.sort | 升序排序 |
列表.sort( reverse=True) | 降序排序 | |
列表.reverse() | 逆序,反转 |
list_name=["zhangsan","lisi","wangwu"]
#取值
print(list_name[2])
#知道数据,想确定在列表中的位置,如果重复数据,只返回出现的第一个位置
print(list_name.index("lisi"))
#修改数据
list_name[2]='李四'
#增加
#append,作为一个整体添加到列表中
list_name.append("wangxiaower")
list_name.append(["1","2"])
#insert,在指定位置插入数据
list_name.insert(1,"xiaoxiao")
#extend,将迭代器的每一项,分别添加到列表中
list_name.extend(["张三","王武"])
#remove,从列表中删除指定数据,删除第一个出现的
list_name.remove("xiaoxiao")
#pop,删除末尾的元素
list_name.pop()
#pop还可以删除指定索引的元素
list_name.pop(0)
#clear,清空整个列表
lst_name=["zahngsan","lisi","wangwu"]
#del是列表的元素,在日常开发中,建议使用列表提供的删除方法
del lst_name[2]
#del 将一个变量从内存中删除
name="xiaoming"
del name
print(lst_name)
lst_name=["zhangsan","lisi","wangwu","zhangsan"]
#计算数组的长度
lst_len=len(lst_name)
#统计某个数据出现的次数
count_name=lst_name.count("zhangsan")
print(lst_len)
print(count_name)
lst1=[1,4,2,6,5,9,7]
#升序
lst1.sort()
#降序
lst1.sort(reverse=True)
#反转
lst1.reverse()
print(lst1)
list1=[2,4,9,0,4,3]
#求列表的最大值
print(max(list1))
#求列表的最小值
print(min(list1))
循环遍历
遍历就是从头到位依次从列表中获取数据
在循环内部针对每一个元素,执行相同的操作
在python中为了提高列表的遍历效率,专门提供的迭代遍历(迭代就是重复的意思)
for in
lst2=[1,2,3,5,2,9]
for i in lst2:
print(i)
列表的应用场景
尽管python的列表中可以存储不同类型的数据
但是在开发中,更多的应用场景是:
1.列表存储相同的数据类型
2. 通过迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作
列表推导式
列表推导式通过对序列中的每一项应用一个表达式来构建一个新的列表方式
list1=[2,4,9,0,4,3]
lst2=[item*2 for item in list1]
print(lst2)