Python中函数的用法包括定义、调用、参数传递、返回值、作用域等方面。下面是一些基本概念和示例:
定义函数
使用`def`关键字定义函数,函数名后跟一对圆括号,用于定义参数。冒号表示函数体的开始。
def greet(name):
print(f"Hello, {name}!")
调用函数
使用函数名后跟一对圆括号(如果有参数,则在括号内传递参数)来调用函数。
greet("Alice") 输出: Hello, Alice!
函数参数
位置参数:按照定义时的顺序传递。
关键字参数:通过参数名明确指定参数值。
默认参数:在定义函数时给参数指定默认值。
可变参数:使用`*args`接收任意数量的位置参数,使用` kwargs`接收任意数量的关键字参数。
函数的返回值
使用`return`语句从函数中返回值。如果没有`return`语句,函数默认返回`None`。
```python
def add(a, b):
return a + b
result = add(3, 4) result 的值为 7
```
局部变量和全局变量
在函数内部定义的变量是局部变量,它只在函数内部有效。
在函数外部定义的变量是全局变量,可以在整个程序中访问。
```python
x = 10 全局变量
def func():
x = 20 局部变量
print(x)
func() 输出: 20
print(x) 输出: 10
```
匿名函数(Lambda函数)
使用`lambda`关键字定义简单的、单行的函数。
```python
square = lambda x: x 2
print(square(5)) 输出: 25
特殊函数
getattr():获取对象的属性值。
assert:进行断言,如果条件为真则继续执行,否则抛出`AssertionError`。
split:将字符串分割成列表。
get()和 set():在字典中获取和设置键值对。
函数式编程
map():将函数应用于序列的每个元素,返回一个集合。
filter():根据条件过滤序列中的元素。
reduce():对序列的元素进行累积操作。
示例
定义函数
def greet(name):
return f"Hello, {name}!"
调用函数
print(greet("Alice")) 输出: Hello, Alice!
定义带参数的函数
def greet_with_age(name, age):
return f"Hello, {name}! You are {age} years old."
调用带参数的函数
print(greet_with_age("Bob", 30)) 输出: Hello, Bob! You are 30 years old.
以上是Python函数的基本用法。