1. 函数基础认知
函数是 Python 中一个非常核心的概念,理解它有助于我们更好地构建结构化、可复用的代码。
1.1 什么是函数?
函数是一个 可重复使用 的代码块,可以接收输入,执行某些操作后返回结果。其语法如下:
def function_name(parameters):
# 执行的操作
return result
例如:
def add(x, y):
return x + y
result = add(2, 3) # 调用函数,结果为 5
1.2 函数的作用
-
封装功能:将一个特定功能封装起来,便于重复调用。
-
提高代码可读性和可维护性:通过函数,代码结构更清晰,易于修改与维护。
-
代码复用:避免重复代码,增加代码的复用性。
-
分工与协作:大型项目中,函数有助于团队分工与协作,每个人负责不同功能的实现。
2. 常用的内置函数
Python 提供了大量的内置函数,这些函数使得我们可以方便地进行数据处理、类型转换、文件操作等。
2.1 基本数据类型相关
-
len():返回对象(字符串、列表、元组等)的长度len("hello") # 输出:5 len([1, 2, 3]) # 输出:3 -
type():返回对象的类型type(42) # 输出:<class 'int'> type("hello") # 输出:<class 'str'> -
int()/float()/str():类型转换int("42") # 输出:42 float("3.14") # 输出:3.14 str(100) # 输出:"100" -
abs():返回数字的绝对值abs(-5) # 输出:5 -
sum():返回可迭代对象的和sum([1, 2, 3, 4]) # 输出:10
2.2 序列与迭代相关
-
range():生成指定范围的数字序列range(5) # 输出:range(0, 5) list(range(5)) # 输出:[0, 1, 2, 3, 4] -
enumerate():将可迭代对象组合为一个索引序列for i, val in enumerate(["a", "b", "c"]): print(i, val) # 输出: # 0 a # 1 b # 2 c -
zip():将多个可迭代对象打包成一个元组list(zip([1, 2], ['a', 'b'])) # 输出:[(1, 'a'), (2, 'b')]
2.3 文件操作与系统相关
-
open():打开文件并返回文件对象with open("file.txt", "r") as f: content = f.read() print(content) -
sorted():返回一个排序后的列表sorted([3, 1, 2]) # 输出:[1, 2, 3] -
map():将一个函数应用于可迭代对象的每个元素list(map(str, [1, 2, 3])) # 输出:['1', '2', '3']
2.4 其他常用函数
-
input():获取用户输入name = input("请输入名字:") print(f"Hello, {name}") -
id():返回对象的唯一标识id(42) # 输出:对象的内存地址(整数) -
any():检查可迭代对象中是否有任意一个元素为真any([False, True, False]) # 输出:True -
all():检查可迭代对象中的所有元素是否都为真all([True, True, False]) # 输出:False
3. 如何查看函数文档
Python 中每个函数和类都可以通过 文档字符串(docstring) 提供详细的使用说明。可以使用 help() 函数或者查看 __doc__ 属性来查看函数的文档。
3.1 使用 help() 查看函数文档
help(len) # 查看 len 函数的文档
输出示例:
Help on built-in function len:
len(obj, /)
Return the number of items in a container.
3.2 使用 .__doc__ 属性查看文档
print(len.__doc__) # 查看 len 函数的文档字符串
输出:
Return the number of items in a container.
3.3 通过官方文档查询
Python 官方提供了丰富的 官方文档,不仅涵盖了所有内置函数、标准库,还提供了详细的示例和使用场景。查阅文档是学习 Python 函数及其用法的重要途径。
4. Python的函数对象与高阶函数
在 Python 中,函数是 一等公民,可以作为 参数传递 或者 返回值。这使得 Python 函数非常灵活,能够支持 高阶函数(接受或返回函数的函数)。
4.1 函数作为参数
def apply_function(func, value):
return func(value)
result = apply_function(lambda x: x ** 2, 5) # 传入匿名函数,返回 25
print(result)
4.2 函数作为返回值
def make_multiplier(factor):
def multiplier(x):
return x * factor
return multiplier
double = make_multiplier(2) # 返回一个倍数函数
print(double(5)) # 输出 10
5. 函数的作用域与闭包
Python 中的函数拥有 作用域,它定义了哪些变量能在函数内部访问。
-
局部作用域:函数内部定义的变量
-
全局作用域:函数外部定义的变量
5.1 闭包
闭包指的是函数定义时 携带了其外部作用域的变量,即使外部函数已经返回。闭包能够保持外部作用域的状态。
def outer(x):
def inner(y):
return x + y
return inner
add_five = outer(5)
print(add_five(10)) # 输出:15
总结
-
函数 是 Python 编程中的基本组成部分,提供了 封装功能、代码复用、结构化编程 的能力。
-
Python 提供了大量的 内置函数,它们简化了我们常见的任务,比如数据处理、类型转换、文件操作等。
-
熟练使用 函数文档,能够帮助我们快速掌握内置函数的功能与用法。
-
理解 函数的作用域与闭包,有助于更深入地理解 Python 中的作用域规则以及高级编程技巧。

8047

被折叠的 条评论
为什么被折叠?



