在Python中,我们可以为函数的参数设置默认值。如果调用函数时没有传递参数,那么参数将使用默认值。
def greet(name='World'):
print(f"Hello, {name}!")
greet() # 输出:Hello, World!
greet('Alice') # 输出:Hello, Alice!
可变参数允许我们向函数传递任意数量的参数。
def sum(*numbers):
total = 0
for number in numbers:
total += number
return total
print(sum(1, 2, 3)) # 输出:6
print(sum(4, 5)) # 输出:9
print(sum(6)) # 输出:6
Python 是一种面向对象的语言,它支持通过类来创建对象。
类用于定义对象的属性和方法。
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
print(f"Hello, my name is {self.name}. I'm {self.age} years old.")
person1 = Person('Alice', 25)
person2 = Person('Bob', 30)
person1.greet() # 输出:Hello, my name is Alice. I'm 25 years old.
person2.greet() # 输出:Hello, my name is Bob. I'm 30 years old.
装饰器是一种语法,可以修改函数的行为。它可以在不修改原始函数代码的情况下,添加额外的功能。
def log(func):
def wrapper(*args, **kwargs):
print(f"Calling {func.__name__} with arguments: {args}")
return func(*args, **kwargs)
return wrapper
@log
def add(a, b):
return a + b
print(add(2, 3)) # 输出:Calling add with arguments: (2, 3)
# 5
Python 中的高级函数可以接受其他函数作为参数或返回函数。
高阶函数是指接受一个或多个函数作为参数,并/或者返回一个函数的函数。
def apply_operation(a, b, operation):
return operation(a, b)
def add(a, b):
return a + b
def subtract(a, b):
return a - b
print(apply_operation(2, 3, add)) # 输出:5
print(apply_operation(2, 3, subtract)) # 输出:-1
匿名函数是没有具名标识符的函数,我们可以将其作为参数传递给其他函数或直接调用。
Lambda 表达式是一种匿名函数的简写形式。
multiply = lambda a, b: a * b
divide = lambda a, b: a / b
print(multiply(2, 3)) # 输出:6
print(divide(6, 2)) # 输出:3
在Python中,我们可以使用 try...except
语句来捕获和处理异常。
try:
# 可能会抛出异常的代码
raise Exception("Something went wrong!")
except Exception as error:
# 捕获并处理异常
print(f"Error: {error}")
通过使用 try...except
块,我们可以在程序出现异常时执行特定的操作并提供更友好的错误处理。