全国咨询/投诉热线:400-618-9090

首页技术文章正文

Python list用法:代码实战演示[超详细]

更新时间:2019-12-03 来源:黑马程序员 浏览量:

快速了解Python list

list在python中是使用非常频频繁的数据类型,也就是python中的“列表”,在其他编程语言中通常叫做“数组”。


python list教程

Python lsit(列表)的作用和定方法

Python list专门用于存储一串信息,使用[]定义,数据之间用英文逗号“,”分隔。例如下面定义一个name_list列表:

name_list = ["张三", "李四", "王五", "赵六"]


列表索引

列表索引就是数据在列表中的位置编号,索引又被成为下标。需要注意的是列表索引的取值范围是从0开始的,如果从列表取值时,超出索引范围程序会报错。

name_list = ["张三", "李四", "王五", "赵六"]

例如上面定义的name_list中“张三”的索引值为“0”,“赵六”的索引值为“3”。

 

如何从list中取值

基本语法为:

列表名[索引值]

例如我们要从name_list中取“张三”这个值,然后使用print函数打印输出,代码如下:


name_list = ["张三", "李四", "王五", "赵六"]
print(name_list[0]) 

 

python list中的常用操作

 

在ipython中顶一个列表,例如name_lsit = [],然后输入name_list. 按下TAB键,ipython会提示列表能够使用的方法,如下图所示: 

 

python list方法

 

列表方法汇总:

分类

关键词/函数/方法

说明

1

增加

列表.insert(索引,数据)

在指定位置插入数据

列表.append(数据)

在末尾追加数据

列表.extend(列表2)

将列表2的数据追加到列表

2

修改

列表[索引] = 数据

修改指定索引的数据

3

删除

del 列表[索引]

删除指定索引的数据

列表.remove[数据]

删除第一个出现的指定数据

列表.pop

删除末尾数据

列表.pop(索引)

删除指定索引数据

列表.clear

清空列表

4

统计

len(列表)

列表长度

列表.count(数据)

数据所在列表中出现的次数

5

排序

列表.sort()

升序排序

列表.sort(reverse=True)

降序排序

列表.reverse()

逆序、反转


下面我们通过一下代码来演示list方法
name_list = ["zhangsan", "lisi", "wangwu", "zhaoliu"]

# 1. 取值和取索引,索引从0开始
print(name_list[2])
# 运行结果为:"wangwu"

# 知道数据,想确定数据在表中位置,使用index方法。需要注意:如果传递的参数不在列表中程序会报错
print(name_list.index("zhangsan"))
# 运行结果为:0

# 2. 修改
# 将“zhangsan”修改为“张三”
name_list[0] = "张三"
print(name_list)
# 运行结果为:["张三", "lisi", "wangwu", "zhaoliu"]

# 3. 增加
# 3.1 使用append在列表末尾添加数据,注意一次只能添加一个数据
name_list.append("zhangsan")
print(name_list)
# 运行结果为:["张三", "lisi", "wangwu", "zhaoliu", "zhangsan"]

# 3.2 insert 在指定位置添加数据
name_list.insert(1, "小姐姐")
print(name_list)
# 运行结果为:["张三", "小姐姐", "lisi", "wangwu", "zhaoliu", "zhangsan"]

# 3.3 在演示extend 之前,我们先添加一个tamp_list列表
tamp_list = ["小明", "李华"]
# extend会在当前列表末尾追加另一个列表的数据
name_list.extend(tamp_list)
print(name_list)
# 运行结果为:["张三", "小姐姐", "lisi", "wangwu", "zhaoliu", "zhangsan", "小明", "李华"]

# 4. 删除
# 4.1 remove方法可以从列表中删除指定数据
name_list.remove("小姐姐")
print(name_list)
# 运行结果为:["张三", "lisi", "wangwu", "zhaoliu", "zhangsan", "小明", "李华"]

# 4.2 pop方法在默认情况下能把列表中最后一条数据删除
name_list.pop()
print(name_list)
# 运行结果为:["张三", "lisi", "wangwu", "zhaoliu", "zhangsan", "小明"]

# 4.3 pop方法可以删除指定索引的数据
name_list.pop(0)
print(name_list)
# 运行结果为:["lisi", "wangwu", "zhaoliu", "zhangsan", "小明"]

# 4.4 使用del删除列表中指定数据
del name_list[0]
print(name_list)
# 运行结果为:["wangwu", "zhaoliu", "zhangsan", "小明"]

# 注意del 关键字本质上是用来将一个变量从内存中删除,在日常开发中,要从列表删除数据,建议使用列表提供的方法。

# 4.5 clear
name_list.clear()
print(name_list)
# 运行结果为:[]

# 我们重新定义一个list
subject_list = ["java", "python", "php", "C++", "python人工智能", "python",]
# 5.通过len函数统计name_list中元素的数量
list_len = len(subject_list)
print(list_len)
# 运行结果为:7

# 6.通过count函数统计元素出现次数,注意统计时不会拆分元素统计
# 例如统计subject_list中“python”元素几个,答案是2个,“python人工智能”不算
count = subject_list.count("python")
print(count)
# 运行结果为:2

# 7. 列表排序
# 上面已经有一个subject_list列表
# 未了方便演示我们再定义一个number_list列表
number = [10, 12, 3, 6, 1, 7, 18]
# 7.1 升序排序:通过.sort()方法实现
subject_list.sort()
number.sort()
print(subject_list)
print(number)
# 运行结果为:
# ['C++', 'java', 'php', 'python', 'python', 'python人工智能']
# [1, 3, 6, 7, 10, 12, 18]

# 7.2 降序排序:.sort(revrse=Ture)实现
subject_list.sort(reverse=True)
number.sort(reverse=True)
print(subject_list)
print(number)
# 运行结果为:
# ['python人工智能', 'python', 'python', 'php', 'java', 'C++']
# [18, 12, 10, 7, 6, 3, 1]

# 7.3 逆序排序
# 重新定义一个列表number2,用于演示逆序排序
number2 = [3, 1, 4, 1, 5, 9, 2, 6]
number2.reverse()
print(number2)
# 运行结果为 [6, 2, 9, 5, 1, 4, 1, 3]

 

列表循环遍历

遍历就是从头到尾依次从列表中获取数据,也就是迭代遍历,使用for就能实现迭代遍历,顺序的从列表中一次回去数据,每一次循环过程中,数据都会保存在my_name这个变量中,在循环体内可以访问到当前这次回去到的数据。

下面我们通过实例演示,for循环遍历:


name_list = ["张三", "李四", "王五"]
for name in name_list:
    print(name)

    

运行结果为:

张三

李四

王五

 

如果我们使用while循环遍历怎做?我们通过实例演示:


name_list = ["张三", "李四", "王五"]
length = len(name_list)
i = 0
while i < length:
        print(name_list[i])
        i += 1

运行结果为:

张三

李四

王五

 

list应用场景

在开发中,列表(list)存储相同类型的数据,通过迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作。


以上我们介绍了python list的使用方法,希望对你有所帮助,如果想系统学习python了解黑马程序员python+人工智能课程


猜你喜欢:

Python元组介绍:10分钟掌握元组用法
python基础视频教程下载

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

http://www.itcast.cn/subject/uizly/index.shtml?seozxuids

14天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

8天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

0天免费试学

基础班入门课程限时免费

申请试学名额

12天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

10天免费试学

基础班入门课程限时免费

申请试学名额
在线咨询 我要报名