Python列表与元组学习笔记

简介: Python列表与元组学习笔记

1. 序列概述

       序列是Python中最基本的数据结构之一,用于存储一系列有序的元素。在Python中,列表与元组都是序列类型的数据结构,具有顺序、可索引和可切片的特性。


1.1 索引

       索引允许我们通过指定位置的数字,来访问序列中的元素。Python中的索引从0开始,即第一个元素的索引为0,第二个元素的索引为1,以此类推。


示例代码:

```python
# 创建一个列表
fruits = ['apple', 'banana', 'orange']
# 访问列表中的元素
print(fruits[0])  # 输出: 'apple'
print(fruits[1])  # 输出: 'banana'
print(fruits[2])  # 输出: 'orange'
```

1.2 切片

       切片是指可以通过指定起始位置和结束位置,来选择序列中一部分元素。切片操作的结果会返回一个新的序列。


示例代码:

```python
# 创建一个列表
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 切片操作
print(numbers[2:5])    # 输出: [3, 4, 5]
print(numbers[:5])     # 输出: [1, 2, 3, 4, 5]
print(numbers[5:])     # 输出: [6, 7, 8, 9, 10]
print(numbers[2:8:2])  # 输出: [3, 5, 7]
```

1.3 序列相加

       序列相加是指将两个序列合并成一个新的序列。


示例代码;

```python
# 创建两个列表
fruits = ['apple', 'banana']
colors = ['red', 'yellow']
# 序列相加
combined = fruits + colors
print(combined)  # 输出: ['apple', 'banana', 'red', 'yellow']
```

1.4 乘法

       乘法是指将序列重复多次。


示例代码:

```python
# 创建一个列表
numbers = [1, 2]
# 乘法操作
doubled = numbers * 2
print(doubled)  # 输出: [1, 2, 1, 2]
```

1.5 检查某个元素是否是序列的成员

       可以使用‘in’关键字来检查某个元素是否是序列的成员。


示例代码:

```python
# 创建一个列表
fruits = ['apple', 'banana', 'orange']
# 检查某个元素是否是序列的成员
print('apple' in fruits)  # 输出: True
print('grape' in fruits)  # 输出: False
```

1.6 计算列表的长度、最大值、和最小值

       可以使用内置函数‘len()’、‘max()’和‘min()’来分别计算序列的长度、最大值和最小值。


示例代码:

```python
# 创建一个列表
numbers = [1, 2, 3, 4, 5]
# 计算列表的长度
print(len(numbers))  # 输出: 5
# 计算列表的最大值
print(max(numbers))  # 输出: 5
# 计算列表的最小值
print(min(numbers))  # 输出: 1
```

2. 列表

       列表是一种可变序列类型,用于存储一系列有序的元素。列表是用括号‘[]’来表示,元素之间用逗号隔开‘,’分隔。


2.1 列表的创建与删除

       可以使用‘[]’来创建一个列表,如果需要在创建时直接包含一些元素,可以在方括号中使用逗号‘,’将元素列出来。可以使用‘del’关键字来删除列表中的元素。


示例代码:

```python
# 创建一个空列表
empty_list = []
# 创建一个包含元素的列表
fruits = ['apple', 'banana', 'orange']
# 删除列表中的元素
del fruits[1]
print(fruits)  # 输出: ['apple', 'orange']
```


2.2 访问列表元素

       可以使用索引来访问列表中的元素。


示例代码:


示例代码:

示例代码:
```python
# 创建一个列表
fruits = ['apple', 'banana', 'orange']
# 访问列表中的元素
print(fruits[0])  # 输出: 'apple'
print(fruits[1])  # 输出: 'banana'
print(fruits[2])  # 输出: 'orange'
```

2.3 遍历列表

       可以使用循环来遍历列表中的所有元素。


示例代码:

```python
# 创建一个列表
fruits = ['apple', 'banana', 'orange']
# 遍历列表中的元素
for fruit in fruits:
    print(fruit)
```

2.4 添加、修改和删除列表元素

       可以使用‘append()’方法向列表末尾添加一个元素,使用索引来修改列表中的元素,使用‘remove()’方法或‘del’关键字来删除列表中的元素。


示例代码:

```python
# 创建一个空列表
fruits = []
# 添加元素到列表末尾
fruits.append('apple')
fruits.append('banana')
# 修改列表中的元素
fruits[1] = 'orange'
# 删除列表中的元素
fruits.remove('apple')
del fruits[0]
print(fruits)  # 输出: ['orange']
```

2.5 对列表进行统计计算

       可以使用内置函数‘len()’、‘sum()’和‘cout()’来计算列表的长度、元素的和以及某个元素在列表中出现的次数。


示例代码:

```python
# 创建一个列表
numbers = [1, 2, 2, 3, 3, 3]
# 计算列表的长度
print(len(numbers))  # 输出: 6
# 计算列表的和
print(sum(numbers))  # 输出: 14
# 计算某个元素在列表中出现的次数
print(numbers.count(2))  # 输出: 2
```

2.6 对列表进行排序

       可以使用‘sort()’方法对列表进行排序。默认情况下,‘sort()’方法会按照升序对列表进行排序,也可以指定‘reverse=True’参数来进行降序排序。


示例代码:

```python
# 创建一个列表
numbers = [5, 2, 3, 1, 4]
# 对列表进行排序
numbers.sort()
print(numbers)  # 输出: [1, 2, 3, 4, 5]
```

2.7 列表推导式

       列表推导式是一种快速创建列表的方法,通过一个表达式后面加上一个循环,可以一次性生成一个列表。


示例代码:

```python
# 使用列表推导式创建一个包含1到10的数字的列表
numbers = [i for i in range(1, 11)]
print(numbers)  # 输出: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
```

2.8 二维列表

       二维列表是指列表中的元素也是列表的情况下,可以通过多重循环来访问和修改二维列表中的元素。

示例代码:

```python
# 创建一个二维列表
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 访问二维列表中的元素
print(matrix[0][0])  # 输出: 1
print(matrix[1][1])  # 输出: 5
print(matrix[2][2])  # 输出: 9
# 修改二维列表中的元素
matrix[1][2] = 10
print(matrix)  # 输出: [[1, 2, 3], [4, 5, 10], [7, 8, 9]]
```

3. 元组

       元组是一种不可变序列类型,用于存储一系列有序的元素。元组使用圆括号‘()’来表示,元素之间使用逗号‘,’来分隔。


3.1 元组的创建与删除

       可以使用圆括号‘()’来创建一个元组,如果需要在创建时直接包含一些元素,可以在圆括号中使用逗号‘,’将元素列出来。由于元组是不可变的,所以无法直接删除元组中的元素。


示例代码:

```python
# 创建一个空元组
empty_tuple = ()
# 创建一个包含元素的元组
fruits = ('apple', 'banana', 'orange')
```

3.2 访问元组元素

       可以使用索引来访问元组中的元素。


示例代码:

```python
# 创建一个元组
fruits = ('apple', 'banana', 'orange')
# 访问元组中的元素
print(fruits[0])  # 输出: 'apple'
print(fruits[1])  # 输出: 'banana'
print(fruits[2])  # 输出: 'orange'
```

3.3 修改元组

       由于元组是不可变的,所以无法直接修改元组中的元素。如果需要修改元组中的元素,可以将元组转换为列表,然后再修改列表中的元素,最后再将列表换回元组。


示例代码:

```python
# 创建一个元组
fruits = ('apple', 'banana', 'orange')
# 将元组转换为列表
fruits_list = list(fruits)
# 修改列表中的元素
fruits_list[1] = 'pear'
# 将列表转换回元组
fruits = tuple(fruits_list)
print(fruits)  # 输出: ('apple', 'pear', 'orange')
```

3.4 元组推导式

       元组推导式和列表推导式类似,也可以快速创建元组。

示例代码:

```python
# 使用元组推导式创建一个包含1到10的数字的元组
numbers = (i for i in range(1, 11))
print(tuple(numbers))  # 输出: (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
```

3.5 元组与列表的区别

       元组和列表的区别在于元组是不可变的,而列表是可变的。因为元组是不可变的,所以元组可以作为字典的键、集合的元素或其他需要不可变对象的地方。


相关文章
|
6天前
|
存储 索引 Python
Python学习笔记----列表、元组和字典的基础操作
这篇文章是一份Python学习笔记,涵盖了列表、元组和字典的基础操作,包括它们的创建、修改、删除、内置函数和方法等。
Python学习笔记----列表、元组和字典的基础操作
|
5天前
|
存储 索引 Python
Python的元组是什么
【8月更文挑战第14天】元组是Python中有序且不可变的数据集合,用于存储多个项目的序列。一旦创建,元组内的元素不能被修改、添加或删除,确保了数据的安全性和可靠性。元组使用圆括号定义,元素间以逗号分隔。
13 5
|
6天前
|
Python
Python学习笔记---函数
这篇文章是一份Python函数学习的笔记,涵盖了使用函数的优势、内置函数的调用、自定义函数的定义、函数参数的不同类型(必须参数、关键字参数、默认参数、可变参数)、有返回值和无返回值的函数、形参和实参、变量作用域、返回函数、递归函数、匿名函数、偏函数以及输入和输出函数等多个函数相关的主题。
|
6天前
|
索引 Python
Python学习笔记----操作字符串
这篇文章是一份Python字符串操作的学习笔记,涵盖了字符串相加、序列相加、字符串长度和字符的查找、统计、分割、连接、替换、去除空白、大小写转换以及判断字符串是否由字母和数字组成等常用方法。
Python学习笔记----操作字符串
|
6天前
|
Python
python学习笔记---流程控制
这篇文章详细介绍了Python中的流程控制,包括选择结构(if、if-else语句、嵌套if语句)和循环语句(while循环、for循环以及for循环与range()函数的使用),以及如何在循环中使用break和continue语句。
python学习笔记---流程控制
|
6天前
|
索引 Python
python学习笔记----必备知识
这篇文章是一份全面的Python学习笔记,涵盖了Python的必备知识,包括语法特点、流程控制、数据类型、运算符、输入输出方法,以及对序列、字符串、正则表达式、函数、面向对象程序设计、模块和包的介绍。
python学习笔记----必备知识
|
8天前
|
索引 Python
Day 7/100:Python列表
Day 7/100:Python列表
9 1
|
13天前
|
索引 Python
【Leetcode刷题Python】从列表list中创建一颗二叉树
本文介绍了如何使用Python递归函数从列表中创建二叉树,其中每个节点的左右子节点索引分别是当前节点索引的2倍加1和2倍加2。
16 7
|
10天前
|
存储 数据库 C++
"深入剖析Python元组(tuple):与列表的对比、特性解析及高效应用场景展示"
【8月更文挑战第9天】Python元组与列表虽均用于存储元素集合,但有本质差异。元组不可变,创建后无法修改,适合保护数据不被意外更改的场景,如作字典键或传递固定值。列表则可变,支持动态增删改,适用于需频繁调整的数据集。元组因不可变性而在性能上有优势,可用于快速查找。两者各有千秋,根据具体需求选择使用。例如,元组可用于表示坐标点或日期,而列表更适合管理用户列表或库存。
16 1
|
19天前
|
Python
探索Python中的列表推导式:从基础到高级应用
【7月更文挑战第31天】在Python编程的多彩世界中,列表推导式以其简洁和高效著称。本文将带领读者从零开始,深入理解列表推导式的工作原理,并通过实际代码示例展示如何利用它解决日常编程问题。我们还将探讨一些高级用法,比如嵌套推导式和生成器表达式,以及它们如何优化性能和简化代码。最后,文章将以思考题结束,鼓励读者将所学应用于更广泛的场景中。
17 5