Python 内建函数列表 > Python 的内置函数 list
Python 的内置函数 list() 是用于创建列表对象的构造函数,它是 Python 中最常用的数据结构之一。
def list(x=None):
'''
类型转换为 list
:param x: 一个变量
:return: 转换为 list 后的值
'''
创建空列表:
最简单用法是不带任何参数调用 list()
示例:my_list = list() 创建一个空列表,等同于 my_list = []
从可迭代对象创建列表:
可以接受任何可迭代对象作为参数(字符串、元组、字典、集合等)
示例:list("hello") 返回 ['h', 'e', 'l', 'l', 'o']
示例:list((1,2,3)) 返回 [1, 2, 3]
示例:list({'a':1, 'b':2}) 返回 ['a', 'b']
类型转换:
常用于将其他序列类型转换为列表
在处理字符串时特别有用,可以方便地进行字符级操作
对象方法:
创建的列表对象具有丰富的内置方法:
append(), extend() - 添加元素
pop(), remove() - 删除元素
sort(), reverse() - 排序操作
index(), count() - 查询操作
数据处理:
将字符串转换为字符列表进行文本处理
将生成器对象转换为可多次遍历的列表
API开发:
将数据库查询结果(通常是元组)转换为更易操作的列表
算法实现:
将其他数据结构转换为列表以利用列表的各种方法
list() 是浅拷贝操作,对新列表元素的修改可能会影响原可迭代对象
对于大型数据,直接使用列表推导式可能比 list() 更高效
Python 3 中 list() 不再支持多个参数,必须传入单个可迭代对象
时间复杂度:O(n),n 是可迭代对象的长度
空间复杂度:O(n),需要为新列表分配内存
# 创建不同类型的列表
empty = list()
chars = list("Python")
numbers = list(range(5))
mixed = list([1, "a", True])
# 字典转换示例
dict_to_list = list({'name': 'Alice', 'age': 25}) # ['name', 'age']
# 与列表推导式对比
squares1 = list(map(lambda x: x**2, range(10)))
squares2 = [x**2 for x in range(10)] # 更推荐的方式