list() 函数
list() 是 Python 的内置函数,用于创建一个列表。这个函数可以接受任何可迭代的对象(例如字符串、元组或字典)作为参数,并返回一个包含迭代器中元素的列表。
以下是一些使用 list() 函数的示例:
# 从字符串创建列表
str_list = list('Hello')
print(str_list) # 输出: ['H', 'e', 'l', 'l', 'o']
# 从元组创建列表
tuple_list = list((1, 2, 3))
print(tuple_list) # 输出: [1, 2, 3]
# 从字典创建列表,只包含键
dict_list = list({'a': 1, 'b': 2, 'c': 3})
print(dict_list) # 输出: ['a', 'b', 'c']
lambda函数(匿名函数)
在 Python 中,lambda 关键字用于创建匿名函数,也就是没有名字的函数。lambda 函数的语法结构如下:
lambda arguments: expression
lambda是 Python 的关键字,表示创建一个匿名函数。arguments是函数的参数,可以有多个,用逗号分隔。:用于分隔参数和表达式。expression是一个关于参数的表达式,这个表达式的值会被这个函数返回。
例如,下面的 lambda 函数接受两个参数 x 和 y,并返回它们的和:
f = lambda x, y: x + y
print(f(1, 2)) # 输出: 3
lambda是用来定义函数的
需要注意的是,lambda 函数只能包含一个表达式,不能包含复杂的语句或逻辑。
关键字参数
在Python中,关键字参数是指在函数或方法调用中,通过参数名指定参数的值。关键字参数可以使代码更加易读和易于理解,因为它们允许程序员使用参数名来指定参数值,而不必记住参数的顺序。在使用关键字参数时,需要在参数名和参数值之间使用等号进行分隔,例如:
def my_func(a, b, c):
print("a=", a)
print("b=", b)
print("c=", c)
# 使用关键字参数调用函数
my_func(b=2, c=3, a=1)
需要注意的是,如果在函数定义中已经指定了某个参数的默认值,那么在函数调用时可以省略该参数,例如:
def my_func(a, b=2, c=3):
print("a=", a)
print("b=", b)
print("c=", c)
# 使用关键字参数调用函数
my_func(a=1, c=4)
range() 函数
在 Python 中,range() 是一个内置函数,用于生成一个不可变的整数序列。通常用于循环中。
range() 函数有三种形式:
range(stop): 生成从 0 开始,到stop - 1的整数序列。range(start, stop): 生成从start开始,到stop - 1的整数序列。range(start, stop, step): 生成从start开始,到stop - 1的整数序列,步长为step。 示例:
for i in range(5):
print(i)
输出:
0
1
2
3
4
注意,range() 函数生成的序列不包括 stop 参数指定的值。
zip()函数
用于将可迭代的对象(如列表、元组等)作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。
zip接收的是多参数,把这些参数进行压缩。*号操作符,是解压缩,传递一个参数。
# 两个列表
a = [1, 2, 3]
b = [4, 5, 6]
result = zip(a, b)
print(list(result)) # 输出:[(1, 4), (2, 5), (3, 6)]
# 解压元组列表
a = [(1, 4), (2, 5), (3, 6)]
b, c = zip(*a)
print(list(b)) # 输出:[1, 2, 3]
print(list(c)) # 输出:[4, 5, 6]
解压缩的操作,有点像“竖着来”,把每一个可迭代对象的第n个放到一起。解压缩的结果,是一个可迭代对象。解压缩的参数,传递二维结构,但里面的内容只需要是可迭代对象(数组,元组都可以)。
# 有如下二维列表
values = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 解压缩
result = zip(*values)
print(list(result)) # 输出:[(1, 4, 7), (2, 5, 8), (3, 6, 9)]