python第四章列表、元组、字典、set

list

Python 内置的一种数据类型是列表:list。list 是一种有序的集合,可以

随时添加和删除其中的元素

如: 

 classmates = ['Michael', 'Bob', 'Tracy']

 len(classmates) 计算个数

 

访问

>>> classmates[0]

'Michael'

>>> classmates[1]

'Bob'

>>> classmates[2]

'Tracy’

 

还可以用 -1 做索引,直

接获取最后一个元素:

>>> classmates[-1]

'Tracy'

 

当索引超出了范围时,Python 会报一个 IndexError 错误,所以,要确保

索引不要越界,记得最后一个元素的索引是 len(classmates) - 1 。

 

添加

 1 classmates.append('Adam')

>>> classmates

['Michael', 'Bob', 'Tracy', 'Adam']

append  往 list 中追加元素到末尾

 

2 classmates.insert(1, 'Jack')

>>> classmates

['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']

 

Insert 把元素插入到指定的位置,比如索引号为 1 的位置

 

删除

 1 classmates.pop('Adam')

>>> classmates

['Michael', 'Jack', 'Bob', 'Tracy']

 

 pop ()删除 list 末尾的元素  删除指定位置的元素,用 pop(i) 方法,其中 i 是索引位置

 

 

修改

 classmates[1] = 'Sarah'

>>> classmates

['Michael', 'Sarah', 'Tracy']

 

 

list 里面的元素的数据类型也可以不同,比如:

>>> L = ['Apple', 123, True]

 

list 元素也可以是另一个 list,比如:

>>> s = ['python', 'java', ['asp', 'php'], 'scheme']

获取的方式  s[2][1]

 

 

Python列表脚本操作符

列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。

如下所示:

Python 表达式

结果

描述

len([1, 2, 3])

3

长度

[1, 2, 3] + [4, 5, 6]

[1, 2, 3, 4, 5, 6]

组合

['Hi!'] * 4

['Hi!', 'Hi!', 'Hi!', 'Hi!']

重复

3 in [1, 2, 3]

True

元素是否存在于列表中

for x in [1, 2, 3]: print x,

1 2 3

迭代

 

Python列表截取与拼接

Python的列表截取与字符串操作类型,如下所示:

L=['Google', 'Runoob', 'Taobao']

操作:

Python 表达式

结果

描述

L[2]

'Taobao'

读取第三个元素

L[-2]

'Runoob'

从右侧开始读取倒数第二个元素: count from the right

L[1:]

['Runoob', 'Taobao']

输出从第二个元素开始后的所有元素

 

Python列表函数&方法

Python包含以下函数:

序号

函数

1

len(list)
列表元素个数

2

max(list)
返回列表元素最大值

3

min(list)
返回列表元素最小值

4

list(seq)
将元组转换为列表

Python包含以下方法:

序号

方法

1

list.append(obj)
在列表末尾添加新的对象

2

<think>好的,用户想了解Python字典列表元组的使用方法和区别。首先,我需要回忆这三者的基本定义和特点。 首先,列表list)是可变的有序集合,元素可以是不同类型,用方括号定义。比如用户提到的引用[2]中的例子,遍历和切片操作列表支持增删改查,方法如append、insert、pop等。 然后是元组tuple),不可变的有序序列,用圆括号定义。同样来自引用[2],元组的遍历和切片和列表类似,但一旦创建不能修改。所以适用于不需要改变的数据,比如坐标、配置项等。 字典dict)是键值对的无序集合,用花括号定义。如引用[1]和[2]提到的,字典的方法有keys、values、items等。字典的访问通过键而不是索引,查找速度快。 接下来需要比较它们的区别。类型上,列表元组是序列,字典是映射。可变性方面,列表可变,元组不可变,字典的键不可变但值可变。语法上,列表用[],元组()字典用{},而单元素元组需要加逗号,比如(1,)。 使用场景方面,列表用于同类元素的有序集合,需要频繁修改的情况。元组用于保证数据不被修改,如函数返回多个值。字典适合键值关联的数据,快速查找。 然后要检查用户提供的引用内容。引用[1]展示了字典的方法,如keys、items等。引用[2]有列表元组的遍历和切片,以及字典的定义和访问。需要确保回答中正确引用这些内容。 可能用户需要具体的例子,比如如何创建、修改这些数据结构。同时要指出性能差异,比如列表的插入删除在中间位置效率低,而字典的查找是O(1)时间。 还要注意生成相关问题,比如可变性影响、如何选择数据结构、性能比较等。确保问题覆盖用户可能感兴趣的扩展内容。 最后整理结构,先分别介绍每个数据结构,再对比区别,最后应用场景。保持回答清晰,符合用户要求的中文和格式,正确使用LaTeX,比如方法名用$符号包裹。</think>### Python字典列表元组的用法与区别 #### 一、基本定义与特性 1. **列表List)** - **定义**:用方括号`[]`表示,元素可重复且有序,支持动态修改 - **示例**: ```python my_list = [1, "apple", True] # 支持混合类型 ``` - **核心方法**: - 增删改:`append()`、`insert()`、`pop()`、`remove()` - 切片操作:`my_list[0:3]`(引用[2]中元组的切片语法同样适用) 2. **元组Tuple)** - **定义**:用圆括号`()`表示,元素不可修改,常用于固定数据存储 - **示例**: ```python my_tuple = (1, 2, ("a", "b")) # 支持嵌套 ``` - **特性**: - 单元素元组需加逗号:`(1,)` - 遍历与切片与列表语法相同(如引用[2]中`for i in my_tuple`) 3. **字典Dict)** - **定义**:用花括号`{}`表示键值对,键不可重复且不可变(如字符串/数字) - **示例**: ```python my_dict = {'name': 'zhangsan', 'age': 20} # 引用[2]中初始化示例 ``` - **核心方法**: - 访问:`get(key)`、`keys()`、`values()`、`items()` - 修改:`update()`、`setdefault()`(引用[1]中方法列表) #### 二、关键区别对比 | 特性 | 列表 | 元组 | 字典 | |----------------|------------------|------------------|------------------| | **可变性** | ✔️ 可动态修改 | ❌ 不可修改 | ✔️ 值可修改,键不可变 | | **有序性** | ✔️ | ✔️ | ❌(Python 3.7+ 有序) | | **语法标识** | `[]` | `()` | `{}` | | **元素访问** | 索引(如`list[0]`) | 索引(如`tuple[0]`) | 键(如`dict["key"]`) | | **时间复杂度** | 插入/删除:最坏$O(n)$ | - | 查找:平均$O(1)$ | #### 三、应用场景 1. **列表**:需要频繁修改的数据集合(如日志记录、动态队列) 2. **元组**:保证数据不可变(如函数多返回值、常量定义) 3. **字典**:键值关联数据(如JSON数据处理、缓存系统) #### 四、代码示例 ```python # 列表操作 colors = ["red", "green"] colors.append("blue") # 添加元素 # 字典遍历(引用[1]中items()方法) for key, value in my_dict.items(): print(f"{key}: {value}") # 元组解包 x, y = (5, 10) # 用于函数返回多个值 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值