Python中的列表

学完Python的列表就相当于Java的List

1 列表简介

1.1 列表的定义

  • List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组

  • 专门用于存储 一串 信息

  • 列表用 [] 定义,数据 之间使用 , 分隔

  • 列表的 索引0 开始

    • 索引 就是数据在 列表 中的位置编号,索引 又可以被称为 下标

注意:从列表中取值时,如果 超出索引范围,程序会报错

name_list = ["zhangsan", "lisi", "wangwu"]

1.2 列表常用操作

  • ipython3 中定义一个 列表,例如:name_list = []

  • 输入 name_list. 按下 TAB 键,ipython 会提示 列表 能够使用的 方法 如下:

In [1]: name_list.
name_list.append   name_list.count    name_list.insert   name_list.reverse
name_list.clear    name_list.extend   name_list.pop      name_list.sort
name_list.copy     name_list.index    name_list.remove 
序号分类关键字 / 函数 / 方法说明
1 增加 列表.insert(索引, 数据) 在指定位置插入数据

Python列表函数&方法

Python包含以下函数:

序号函数
1 len(list)
列表元素个数
2 max(list)
返回列表元素最大值
3 min(list)
返回列表元素最小值
4 list(seq)
将元组转换为列表

Python包含以下方法:

序号方法
1 list.append(obj)
在列表末尾添加新的对象
2 list.count(obj)
统计某个元素在列表中出现的次数
3 list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4 list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
5 list.insert(index, obj)
将对象插入列表
6 list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7 list.remove(obj)
移除列表中某个值的第一个匹配项
8 list.reverse()
反向列表中元素
9 list.sort( key=None, reverse=False)
对原列表进行排序
10 list.clear()
清空列表
11 list.copy()
复制列表

 

del 关键字(科普)

  • 使用 del 关键字(delete) 同样可以删除列表中元素

  • del 关键字本质上是用来 将一个变量从内存中删除的

  • 如果使用 del 关键字将变量从内存中删除,后续的代码就不能再使用这个变量了

del name_list[1]

在日常开发中,要从列表删除数据,建议 使用列表提供的方法

关键字、函数和方法(科普)

  • 关键字 是 Python 内置的、具有特殊意义的标识符

In [1]: import keyword
In [2]: print(keyword.kwlist)
In [3]: print(len(keyword.kwlist))

关键字后面不需要使用括号

  • 函数 封装了独立功能,可以直接调用

函数名(参数)

函数需要死记硬背

  • 方法 和函数类似,同样是封装了独立的功能

  • 方法 需要通过 对象 来调用,表示针对这个 对象 要做的操作

对象.方法名(参数)

在变量后面输入 .,然后选择针对这个变量要执行的操作,记忆起来比函数要简单很多

1.3 循环遍历

  • 遍历 就是 从头到尾 依次列表 中获取数据

    • 循环体内部 针对 每一个元素,执行相同的操作

  • Python 中为了提高列表的遍历效率,专门提供的 迭代 iteration 遍历

  • 使用 for 就能够实现迭代遍历

# for 循环内部使用的变量 in 列表
for name in name_list:
​
#循环内部针对列表元素进行操作
print(name)

1.4 应用场景

  • 尽管 Python列表 中可以 存储不同类型的数据

  • 但是在开发中,更多的应用场景是

    1. 列表 存储相同类型的数据

    2. 通过 迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作

2 常用方法

stus = ['孙悟空','猪八戒','沙和尚','唐僧','孙悟空']
print(stus)
# 遍历
for s in stus :
    print(s)
print('stus的长度',len(stus))
print('孙悟空出现的次数',stus.count('孙悟空'))
print('索引1出现的数',stus.pop(1))
stus.append('白龙马')
print('添加成员',stus)
stus.remove('孙悟空')
print('删除成员',stus) #默认是第一个成员
stus1 = stus.copy()  #指向的同一个地址值,改变其中一个,还有一个也改变
print('copy',stus1)
stus.extend(['蜘蛛精','佛祖'])
print(stus)
int = stus.index('孙悟空')
print('索引出现的问题',int)
stus.clear()
print(stus)    #清空
print(stus1)   #没有清空

 结果:

E:PyWorkSpacevenvScriptspython.exe E:/PyWorkSpace/venv/bbb.py
['孙悟空', '猪八戒', '沙和尚', '唐僧', '孙悟空']
孙悟空
猪八戒
沙和尚
唐僧
孙悟空
stus的长度 5
孙悟空出现的次数 2
索引1出现的数 猪八戒
添加成员 ['孙悟空', '沙和尚', '唐僧', '孙悟空', '白龙马']
删除成员 ['沙和尚', '唐僧', '孙悟空', '白龙马']
copy ['沙和尚', '唐僧', '孙悟空', '白龙马']
['沙和尚', '唐僧', '孙悟空', '白龙马', '蜘蛛精', '佛祖']
索引出现的问题 2
[]
['沙和尚', '唐僧', '孙悟空', '白龙马']

Process finished with exit code 0
原文地址:https://www.cnblogs.com/dalianpai/p/12129837.html