定义自定义函数

Python 中级:面向开发者

Jasmin Ludolf

Senior Data Science Content Developer

计算平均值

# 备餐时间列表(分钟)
preparation_times = [19.23, 15.67, 48.57, 23.45, 12.06, 34.56, 45.67]

# 计算平均备餐时间 average_time = sum(preparation_times) / len(preparation_times)
# 对结果四舍五入 rounded_average_time = round(average_time, 2) print(average_time)
28.46
Python 中级:面向开发者

何时编写自定义函数

不要重复自己(DRY)

$$

  • 何时考虑编写自定义函数:
    • 代码行数
    • 代码复杂度
    • 使用频率

沙漠

Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def








Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average








Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(








Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(values)








  • values(参数)——函数完成任务所需的信息
Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(values):








Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(values):
    # 计算平均值
    average_value = sum(values) / len(values)





Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(values):
    # 计算平均值
    average_value = sum(values) / len(values)

    # 四舍五入结果
    rounded_average = round(average_value, 2)



Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(values):
    # 计算平均值
    average_value = sum(values) / len(values)

    # 四舍五入结果
    rounded_average = round(average_value, 2)

# 返回输出 return
  • average_valuerounded_average 只在 average() 内可用
Python 中级:面向开发者

创建自定义函数

# 创建一个自定义函数来计算平均值
def average(values):
    # 计算平均值
    average_value = sum(values) / len(values)

    # 四舍五入结果
    rounded_average = round(average_value, 2)

    # 返回 rounded_average 作为输出
    return rounded_average
  • 文档至关重要 📚
Python 中级:面向开发者

使用自定义函数

# 备餐时间列表(分钟)
preparation_times = [19.23, 15.67, 48.57, 23.45, 12.06, 34.56, 45.67]

# 计算平均值 print(average(preparation_times))
28.46
# 订单数量列表
orders = [12, 8, 10, 9, 15, 21, 16]

print(average(orders))
12.86
Python 中级:面向开发者

存储函数输出

# 计算平均值
print(average(preparation_times))
28.46
# 存储平均值
average_time = average(preparation_times)

print(average_time)
28.46
Python 中级:面向开发者

Passons à la pratique !

Python 中级:面向开发者

Preparing Video For Download...