Python——列表数据类型及常用操作

简介: Python——列表数据类型及常用操作

0d102e10fb1f455fb7f6255f3036d528 (1).png

列表是最常用的 Python 数据类型,与 JAVA、C 中数组不同的是:

  • 列表(List)存储的数据项不需要具有相同的类型
  • 数组(Array)的数据项必须是同一数据类型

格式

[数据1,数据2,数据3,数据4......]

注:列表(List)可以一次性存储多个数据,且可以为不同数据类型

常用操作

列表的基础操作包括:增、删、改、查。

1、查找


下标

获取指定下标的数据。

  1. 语法:
列表序列[下标]
  1. 示例:
name_list = ['Tom','Lily','Rose']
print(name_list[0])   #Tom
print(name_list[1])   #Lily
print(name_list[2])   #Rose

index()

返回指定数据所在位置的下标

  1. 语法:
列表序列.index(数据,开始位置下标,结束位置下标)
  1. 示例:
name_list= ['Tom','Lily','Rose']
print(name_list.index('Lily'))          #1print(name_list.index('Lily',0,2))      #1#print(name_list.index('Lil'))         

注:如果查找结果不存在则报错:ValueError: 'Lil' is not in list

count()

统计指定数据在当前列表中出现的次数

  1. 语法:
列表序列.count(数据)
  1. 示例:
name_list = ['Tom','Lily','Rose']
print(name_list.count('Lil'))   #0
print(name_list.count('Lily'))    #1

len()

返回列表长度,即列表中数据的个数。

  1. 语法:
len(列表)
  1. 示例:
name_list = ['Tom','Lily','Rose']
print(len(name_list))   #3

in()

判断指定的数据是否存在某个列表序列,如果存在则返回 True,否则返回 False

  1. 语法:
数据 in 列表
  1. 示例:
name_list = ['Tom','Lily','Rose']
print('Lil' in name_list)   #False
print('Lily' in name_list)    #True

not in()

判断指定的数据是不在某个列表序列,如果不存在则返回 True,否则返回 False

  1. 语法:
数据 not in 列表
  1. 示例:
name_list = ['Tom','Lily','Rose']
print('Lil' not in name_list)   #True
print('Lily' not in name_list)    #False

2、增加

增加指定数据到列表中。

append()

在列表结尾追加数据。

  1. 语法:
列表序列.append(数据)

示例:

  • 数据为单个数据
name_list = ['Tom','Lily','Rose']
name_list.append('XiaoMing')
print(name_list)    #['Tom', 'Lily', 'Rose', 'XiaoMing']
  • 数据为一个列表序列(整个列表序列作为一个元素追加到尾部)
name_list1 = ['Tom','Lily','Rose']
name_list2 = ['Tim','Lee','Rosy']
name_list1.append(name_list2)
print(name_list1)       #['Tom', 'Lily', 'Rose', ['Tim', 'Lee', 'Rosy']]
print(name_list2)       #['Tim', 'Lee', 'Rosy']

extend()

在列表结尾追加数据,如果数据是一个序列,则将这个序列的数据拆分再逐一添加到列表。

  1. 语法:
列表序列.extend(数据)

示例:

  • 数据为单个数据(将数据拆开,逐一添加到列表)
name_list = ['Tom','Lily','Rose']
name_list.extend('XiaoMing')
print(name_list)    #['Tom', 'Lily', 'Rose', 'X', 'i', 'a', 'o', 'M', 'i', 'n', 'g']

数据为一个列表序列(列表序列的元素追加到尾部)

name_list1 = ['Tom','Lily','Rose']
name_list2 = ['Tim','Lee','Rosy']
name_list1.extend(name_list2)
print(name_list1)       #['Tom', 'Lily', 'Rose', 'Tim', 'Lee', 'Rosy']
print(name_list2)       #['Tim', 'Lee', 'Rosy']

insert()

在列表指定位置新增数据。

  1. 语法:
列表序列.insert(位置下标,数据)

 2.示例:

name_list = ['Tom','Lily','Rose']
name_list.insert(4,'XiaoMing')
# name_list.insert(len(name_list),'XiaoMing')
print(name_list)    #['Tom', 'Lily', 'Rose', 'XiaoMing']

3、删除

del

删除目标。

  1. 语法:
del 目标

 2.示例:

  • 删除列表
name_list = ['Tom','Lily','Rose']
del name_list
print(name_list)    #NameError: name 'name_list' is not defined
  • 删除指定数据
name_list = ['Tom','Lily','Rose']
del name_list[1]
print(name_list)    #['Tom', 'Rose']

pop()

删除指定下标的数据(默认最后一个),并返回删除的数据

  1. 语法:
列表序列.pop(下标)
  1. 示例:
name_list = ['Tom','Lily','Rose']
pop_name1 = name_list.pop()
pop_name2 = name_list.pop(1)
print(name_list)    #['Tom']
print(pop_name1)    #Rose
print(pop_name2)    #Lily

remove()

移除列表中某个数据的第一个匹配项

  1. 语法:
列表序列.remove(数据)

  2.示例:

name_list = ['Tom','Lily','Rose','Lily']
name_list.remove('Lily')    
print(name_list)    #['Tom', 'Rose', 'Lily']

clear()

清空列表。

  1. 语法:
列表序列.clear()
• 1
  1. 示例:
name_list = ['Tom','Lily','Rose','Lily']
name_list.clear()
print(name_list)    #[]

4、修改

下标

修改指定下标的数据。

  1. 语法:
列表序列[下标]=数据

 2.示例:

name_list = ['Tom','Lily','Rose','Lily']
name_list[3]='LiMing'
print(name_list)    #['Tom', 'Lily', 'Rose', 'LiMing']

reverse()

将列表序列数据逆置

  1. 语法:
列表序列.reverse()
  1. 示例:
name_list = ['Tom','Lily','Rose','Lily']
name_list.reverse()
print(name_list)    #['Lily', 'Rose', 'Lily', 'Tom']

sort()

对列表序列数据进行排列,默认升序

  1. 语法:
列表序列.sort(key=None,reverse=False)

注:key 配合字典 Key;reverse 表示排序规则,reverse=True 降序,reverse=Fasle 升序(默认)

  1. 示例:
name_list = ['Tom', 'Aily', 'Rose', 'Ably']
name_list.sort()
print(name_list)  # ['Ably', 'Aily', 'Rose', 'Tom']
name_list.sort(reverse=False)
print(name_list)  # ['Ably', 'Aily', 'Rose', 'Tom']
name_list.sort(reverse=True)
print(name_list)  # ['Tom', 'Rose', 'Aily', 'Ably']

5、复制

copy()

复制一个列表序列的数据并返回一个列表序列。

  1. 语法:
列表序列.copy()
• 1

  2.示例:

name_list = ['Tom', 'Aily', 'Rose', 'Ably']
name_list_copy = name_list.copy()
print(name_list)   # ['Ably', 'Aily', 'Rose', 'Tom']
print(name_list_copy)   # ['Tom', 'Aily', 'Rose', 'Ably']

6、循环遍历

while

name_list = ['Tom', 'Aily', 'Rose', 'Ably']
i = 0
while i < len(name_list):     
    print(name_list[i],end=" ")   # Tom Aily Rose Ably 
    i += 1

for

name_list = ['Tom', 'Aily', 'Rose', 'Ably']
for i in name_list:
    print(i,end=" ")    # Tom Aily Rose Ably 

7、列表嵌套

列表嵌套指一个列表中包含了其他子列表。

  1. 语法:
列表序列=[列表序列1,列表序列2,列表序列3......]

 2.示例:

# 输出列表中的 5
name_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 1、按下标找到 5 所在的列表
print(name_list[1])  # [4, 5, 6]
# 1、从 5 所在的列表中,再按下标找到数据 5
print(name_list[1][1])  # 5
# 遍历输出
for i in name_list:
    for j in i:
        print(j, end=" ")  # 1 2 3 4 5 6 7 8 9


目录
相关文章
|
3天前
|
索引 Python
Python列表
Python列表。
26 8
|
6天前
|
C语言 Python
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
24 9
|
14天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
27 14
|
16天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
29 10
|
24天前
|
Python
Python 中一些常见的数据类型
Python 中一些常见的数据类型
77 8
|
29天前
|
Python
Python中不同数据类型之间如何进行转换?
Python中不同数据类型之间如何进行转换?
27 6
|
29天前
|
存储 开发者 Python
Python 的数据类型
Python 的数据类型
38 6
|
1月前
|
数据处理 开发者 Python
Python中的列表推导式:简洁高效的数据处理
在编程世界中,效率和可读性是代码的两大支柱。Python语言以其独特的简洁性和强大的表达力,为开发者提供了众多优雅的解决方案,其中列表推导式便是一个闪耀的例子。本文将深入探讨列表推导式的使用场景、语法结构及其背后的执行逻辑,带你领略这一特性的魅力所在。
|
1月前
|
机器学习/深度学习 存储 数据挖掘
Python 编程入门:理解变量、数据类型和基本运算
【10月更文挑战第43天】在编程的海洋中,Python是一艘易于驾驭的小船。本文将带你启航,探索Python编程的基础:变量的声明与使用、丰富的数据类型以及如何通过基本运算符来操作它们。我们将从浅显易懂的例子出发,逐步深入到代码示例,确保即使是零基础的读者也能跟上步伐。准备好了吗?让我们开始吧!
29 0
|
1月前
|
JavaScript 前端开发 算法
python中的列表生成式和生成器
欢迎来到瑞雨溪的博客,这里是一位热爱JavaScript和Vue的大一学生的天地。通过自学前端技术2年半,现正向全栈开发迈进。如果你从我的文章中受益,欢迎关注,我将持续更新高质量内容,你的支持是我前进的动力!🎉🎉🎉
24 0