数据结构【2】:列表专题

数据结构【2】:列表专题

一、列表定义

在Python中,列表是一种有序、可变、允许重复元素 的数据结构。它是由一组元素组成的,这些元素可以是不同数据类型的对象 ,包括数字、字符串、布尔值、其他列表,甚至是自定义对象。列表是用方括号\[\]括起来的,元素之间用逗号分隔。

二、列表的特点

  1. 有序性 :列表中的元素按照它们被加入的顺序排列,每个元素在列表中都有一个固定的位置索引。
  2. 可变性:列表是可变的,可以动态地增加、删除和修改列表中的元素。
  3. 元素类型 :列表可以包含任意类型的元素,包括数字、字符串、对象等。
  4. 长度 :列表的长度是指其中包含的元素个数,可以通过内置方法获取列表的长度。

三、列表的基本操作

1、append(x):在列表末尾添加一个新元素 x。

python 复制代码
my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # 输出: [1, 2, 3, 4]

2、insert(i, x):在索引 i 处插入一个新元素 x。

python 复制代码
my_list = [1, 2, 3]
my_list.insert(1, 5)
print(my_list)  # 输出: [1, 5, 2, 3]

3、len(list) 方法返回列表元素个数。

python 复制代码
#!/usr/bin/python3

list1 = ['Google', 'W3CSchool', 'Taobao']
print (len(list1))	# 输出:3
list2=list(range(5)) # 创建一个 0-4 的列表
print (len(list2))	# 输出:5

4、extend(iterable):将 可迭代对象 中的元素追加到列表的末尾

python 复制代码
my_list = [1, 2, 3]
other_list = [4, 5, 6]
my_list.extend(other_list)
print(my_list)  # 输出: [1, 2, 3, 4, 5, 6]

5、remove(x):移除列表中第一个出现的值为 x 的元素

python 复制代码
my_list = [1, 2, 3, 2]
my_list.remove(2)
print(my_list)  # 输出: [1, 3, 2]

6、pop(i):移除 并返回列表中指定位置的 元素,默认为末尾元素。

python 复制代码
my_list = [1, 2, 3]
x = my_list.pop(1)
print(x)  # 输出: 2
print(my_list)  # 输出: [1, 3]

7、index(x, start, end):返回 第一个值为 x 的元素的索引,可指定搜索的起始和结束位置。

python 复制代码
my_list = [1, 2, 3, 2]
index = my_list.index(2)
print(index)  # 输出: 1

8、count(x):返回值为 x 的元素在列表中出现的次数。

python 复制代码
my_list = [1, 2, 3, 2, 2]
count = my_list.count(2)
print(count)  # 输出: 3

9、max(list):返回列表元素中的最大值。

python 复制代码
my_list = [1, 2, 3, 2, 2]
count = max(my_list)
print(count)  # 输出: 3

10、min(list):返回列表元素中的最小值。

python 复制代码
my_list = [1, 2, 3, 2, 2]
count = min(my_list)
print(count)  # 输出: 1

11、list( seq ):用于将序列(元组,集合,字符串等)转换为列表。
注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中 ,列表是放于方括号中 。集合和列表也是很相似的,区别在于集合不能有重复值 。只有与列表结构相似的序列才能转换为列表,字典只能分别将他们的键和值转换成列表。

python 复制代码
#!/usr/bin/python3

aTuple = (123, 'Google', 'W3CSchool', 'Taobao')
list1 = list(aTuple)
print ("列表元素 : ", list1)

str="Hello World"
list2=list(str)
print ("列表元素 : ", list2)
===结果===
列表元素 :  [123, 'Google', 'W3CSchool', 'Taobao']
列表元素 :  ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']

12、list.reverse():函数用于反向列表中元素。

python 复制代码
#!/usr/bin/python3

list1 = ['Google', 'W3CSchool', 'Taobao', 'Baidu']
list1.reverse()
print ("列表反转后: ", list1)	# 列表反转后:  ['Baidu', 'Taobao', 'W3CSchool', 'Google']

参考链接:

python 复制代码
https://www.w3cschool.cn/python3/python3-att-list-sort.html
https://blog.csdn.net/bb8886/article/details/129529427
相关推荐
羲云网络17 分钟前
GPT Image 2.6 接入指南:Flare、Sunburst 怎么选,编辑失败如何排查
人工智能·python·aigc·图像生成·acedatacloud
likexuec1 小时前
数据结构(2)
数据结构
D e re k ZH2 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
冻柠檬飞冰走茶3 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
橙橙笔记4 小时前
具身智能的学习 - 完成一个机械臂 第1节
python·学习·机械臂·具身智能
小小张说故事4 小时前
Python 的 class 语句到底执行了什么?拆开 __prepare__、metaclass.__new__ 和那个被讲反的 __set_name__ 顺序
python
天天被压力6 小时前
【A股分钟级高频数据完全手册 #07】北交所历史分钟K线接口:京市Pro版分时批量
java·人工智能·python
天天被压力6 小时前
【A股分钟级高频数据完全手册 #08】股票日、分时数据接口对比:普通分时与Pro版差异实测
java·人工智能·python
特立独行的猫A6 小时前
AI 时代,我为什么推荐用 cj-tauri 开发桌面应用
java·后端·python
小lo想吃棒棒糖7 小时前
把机器人训练从 GPU 搬到昇腾 NPU:启元 Q1 起身动作 PPO 训练全记录
python·机器人·昇腾·启元机器人