Python核心教程02:函数编写与应用
需积分: 5 4 浏览量
更新于2024-11-22
收藏 965B ZIP 举报
资源摘要信息: "Python核心教程第二部分:函数"
知识点一:函数基础
Python中的函数是由一系列语句组成的代码块,它们用于执行特定任务。定义函数使用关键字def,后跟函数名和一对圆括号(),函数名后跟一个冒号,表示函数体的开始。函数体包含一个缩进的代码块。例如:
```python
def greet(name):
print("Hello, " + name + "!")
greet("Alice")
```
知识点二:函数参数
函数可以有参数,参数在函数定义时可以指定名称。调用函数时,需要按照参数的顺序传递值。参数可以有默认值,这样调用函数时就可以不必提供所有参数。此外,Python支持可变参数,使用*args和**kwargs来传递不确定数量的参数。
知识点三:返回值
函数可以返回数据给调用者,使用return语句返回值。如果没有return语句或者没有表达式,函数默认返回None。
```python
def sum_numbers(a, b):
return a + b
result = sum_numbers(3, 4)
print(result)
```
知识点四:局部与全局变量
函数内定义的变量称为局部变量,它只在函数内部有效。函数外定义的变量称为全局变量,可以在整个程序中访问。如果需要在函数内修改全局变量,需要使用global关键字声明。
知识点五:作用域
作用域是指变量在程序中可以被访问的区域。Python中的作用域分为局部作用域、封闭作用域、全局作用域和内建作用域。LEGB规则指定了Python在查找变量时的顺序:Local、Enclosing、Global、Built-in。
知识点六:匿名函数
Python使用lambda关键字创建匿名函数。匿名函数没有函数名,使用时非常简洁,通常用于需要函数对象的场合。
```python
square = lambda x: x * x
print(square(5))
```
知识点七:文档字符串
文档字符串(docstring)是Python中一种特殊的字符串。它用于在函数定义时提供文档说明,可以使用三个引号(单引号或双引号均可)来创建。它被存储在函数的__doc__属性中。
```python
def greet(name):
"""打印问候语"""
print("Hello, " + name + "!")
```
知识点八:递归函数
递归函数是直接或间接调用自身的函数。递归函数必须有一个明确的终止条件,否则会导致无限递归,最终导致栈溢出错误。
```python
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
print(factorial(5))
```
知识点九:函数装饰器
装饰器是Python中一个功能强大的工具,允许程序员在不修改现有函数代码的情况下增加额外的功能。装饰器本质上是一个接收函数作为参数并返回新函数的函数。
```python
def my_decorator(func):
def wrapper():
print("Something is happening before the function is called.")
func()
print("Something is happening after the function is called.")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
say_hello()
```
知识点十:高阶函数
高阶函数是至少满足下列一个条件的函数:
1. 接受一个或多个函数作为输入
2. 输出一个函数
Python中的内置高阶函数包括map(), filter(), reduce()。
```python
def square(x):
return x * x
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers))
```
以上是对“py代码-Python Core 02_Functions”标题和描述中提及的知识点的详细介绍。这些知识点涵盖了Python函数的定义、参数传递、返回值、变量作用域、匿名函数、文档字符串、递归函数、函数装饰器以及高阶函数的概念和使用方法。通过这些基础知识的学习,用户可以更加深入地掌握Python编程的核心概念,从而编写出更加高效和可维护的代码。
2022-03-23 上传
2022-03-21 上传
2022-02-06 上传
点击了解资源详情
2023-07-16 上传
2023-03-27 上传
2022-03-07 上传
2021-03-26 上传
2022-03-10 上传

weixin_38517095
- 粉丝: 4
- 资源: 936