Python-基础-列表(list)

目录

1、列表

1.1 列表的定义

1.2 列表的特点

2、列表的常用语法

2.1 常用操作

2.2 列表常用的方法

2.3 列表常用的函数

3、列表推导式

1、列表

1.1 列表的定义

列表(List) 是一种用于存储多个项目的可变数据结构。它允许你将不同类型的元素(如数字、字符串、甚至其他列表)组织在一起,并按索引访问

列表使用方括号 [] 来表示,元素之间用逗号 , 分隔

# 定义一个包含整数的列表
my_list = [1, 2, 3, 4, 5]

# 定义一个包含字符串的列表
fruits = ["apple", "banana", "cherry"]

# 定义一个混合类型的列表
mixed_list = [1, "hello", 3.14, True]

1.2 列表的特点

  • 有序性:列表中的元素按插入顺序存储,可以通过索引访问。
  • 可变性:列表是可变的,可以在定义之后修改它的内容。
  • 可以包含不同类型的元素:列表中的元素可以是不同的数据类型(整数、字符串、浮动等)。
  • 支持重复元素:列表中可以包含重复的元素。

2、列表的常用语法

2.1 常用操作

访问列表元素:通过索引来访问列表中的元素,索引从 0 开始

my_list = [10, 20, 30, 40, 50]
print(my_list[0])  # 输出: 10
print(my_list[2])  # 输出: 30

 负索引:列表也支持负索引,表示从后向前访问元素

my_list = [10, 20, 30, 40, 50]
print(my_list[-1])  # 输出: 50
print(my_list[-2])  # 输出: 40

切片:可以通过切片操作来获取列表的部分内容

my_list = [10, 20, 30, 40, 50]
print(my_list[1:4])  # 输出: [20, 30, 40]

修改元素:可以通过索引修改列表中的某个元素

my_list = [10, 20, 30, 40, 50]
my_list[2] = 100
print(my_list)  # 输出: [10, 20, 100, 40, 50]

2.2 列表常用的方法

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

my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # 输出: [1, 2, 3, 4]

extend(iterable):通过添加一个可迭代对象中的所有元素来扩展列表

my_list = [1, 2, 3]
my_list.extend([4, 5])
print(my_list)  # 输出: [1, 2, 3, 4, 5]

insert(i, x):在指定位置 i 插入元素 x

my_list = [1, 2, 3]
my_list.insert(1, 'a')
print(my_list)  # 输出: [1, 'a', 2, 3]

remove(x):删除列表中第一个值为 x 的元素。如果元素不存在,会抛出 ValueError

my_list = [1, 2, 3, 2]
my_list.remove(2)
print(my_list)  # 输出: [1, 3, 2]

pop([i]):删除并返回指定位置的元素。如果不指定位置,默认删除最后一个元素

my_list = [1, 2, 3]
popped_item = my_list.pop(1)
print(popped_item)  # 输出: 2
print(my_list)  # 输出: [1, 3]

clear():移除列表中的所有元素

my_list = [1, 2, 3]
my_list.clear()
print(my_list)  # 输出: []

index(x):返回列表中第一个值为 x 的元素的索引。如果元素不存在,会抛出 ValueError

my_list = [1, 2, 3]
print(my_list.index(2))  # 输出: 1

count(x):返回列表中元素 x 出现的次数。

my_list = [1, 2, 2, 3]
print(my_list.count(2))  # 输出: 2

sort():对列表进行排序,默认升序排列。如果要降序排序,可以指定 reverse=True

my_list = [3, 1, 2]
my_list.sort()
print(my_list)  # 输出: [1, 2, 3]

reverse():反转列表中的元素

my_list = [1, 2, 3]
my_list.reverse()
print(my_list)  # 输出: [3, 2, 1]

copy():返回列表的一个浅拷贝

my_list = [1, 2, 3]
new_list = my_list.copy()
print(new_list)  # 输出: [1, 2, 3]

2.3 列表常用的函数

len(list):返回列表中元素的数量

my_list = [1, 2, 3]
print(len(my_list))  # 输出: 3

min(list):返回列表中最小的元素

my_list = [1, 2, 3]
print(min(my_list))  # 输出: 1

max(list):返回列表中最大的元素

my_list = [1, 2, 3]
print(max(my_list))  # 输出: 3

sum(list):返回列表中所有元素的和(要求元素为数值类型)

my_list = [1, 2, 3]
print(sum(my_list))  # 输出: 6

any(iterable):如果可迭代对象中有任何元素为 True,返回 True,否则返回 False

my_list = [0, 1, 2]
print(any(my_list))  # 输出: True

all(iterable):如果可迭代对象中的所有元素都为 True,返回 True,否则返回 False

my_list = [1, 2, 3]
print(all(my_list))  # 输出: True

sorted(iterable):返回一个排序后的新列表,而不修改原列表

my_list = [3, 1, 2]
sorted_list = sorted(my_list)
print(sorted_list)  # 输出: [1, 2, 3]
print(my_list)  # 原列表不变: [3, 1, 2]

list(iterable):将一个可迭代对象转换为列表

my_tuple = (1, 2, 3)
my_list = list(my_tuple)
print(my_list)  # 输出: [1, 2, 3]

3、列表推导式

列表推导式(List Comprehension)是 Python 中的一种简洁、高效的创建列表的方法。它允许你通过一行代码创建一个新的列表,这个列表通常基于某些序列或可迭代对象的元素,并且可以在其中进行条件过滤或应用函数。列表推导式使代码更加简洁、易读,同时避免了传统循环方式中多行代码的冗长

[expression for item in iterable]
  • expression:对每个元素应用的操作或计算结果,通常是基于 item 的某种操作
  • item:从可迭代对象 iterable 中取出的每个元素
  • iterable:可以是任何支持迭代的对象,比如列表、元组、字符串、字典等

示例 :创建一个包含平方数的列表

假设我们想创建一个包含从 1 到 5 的每个数的平方的列表

squares = [x**2 for x in range(1, 6)]
print(squares)

#输出 [1, 4, 9, 16, 25]

在这个例子中,x**2 是表达式,for x in range(1, 6) 是从 15 遍历所有数字。每个数字 x 都会被平方,并放入新的列表 squares

---------------------------------------------------------------------------------------------------

**使用条件表达式**

列表推导式不仅可以应用在每个元素上进行计算,还可以使用条件语句来筛选特定的元素。条件语句可以放在推导式的末尾

示例 :筛选出偶数的平方

如果我们想要在生成平方数时只考虑偶数,可以在列表推导式中加入一个条件表达式

even_squares = [x**2 for x in range(1, 6) if x % 2 == 0]
print(even_squares)

#输出 [4, 16]

在这个例子中,if x % 2 == 0 是条件表达式,意味着只有当 x 是偶数时,才会将 x**2 加入到结果列表中

你可能感兴趣的:(Python-基础,python,开发语言)