【Python修仙笔记.3】Python函数作为秘技 - 封装你的仙法

章节3: 函数作为秘技 - 封装你的仙法

故事情节

王麻子刷怪升级,灵力破百。老头见他重复写代码攻击,说:"小子,你这是在浪费灵气!用函数封装秘技,一次定义,多次调用,像我的'九阳神功'!"

王麻子:"函数?听起来高端!教我,老头!"

老头:"哈哈,函数是修仙界的绝学,能输入参数,输出结果。来,定义一个攻击函数!"

王麻子学成后,一招秒群妖:"太爽了,这才是修仙!"

编程知识点讲解

老头:"def function_name(parameters): 代码块 return result"

例如:def add_power(current, increase): return current + increase

调用:new_power = add_power(100, 50)

默认参数,*args, **kwargs简单提。

老头:"函数像丹药,输入原料,输出功效。别忘return,不然无果而终!"

实战代码示例

python 复制代码
# 定义攻击函数
def attack(enemy_power, my_power=100):
    if my_power > enemy_power:
        return "胜利!灵力+10"
    else:
        return "失败!灵力-5"

# 调用
result = attack(80)
print(result)

# 带多个参数的函数
def calculate_total_power(*powers):
    total = 0
    for p in powers:
        total += p
    return total

print(calculate_total_power(10, 20, 30, 40))

趣味练习题

  1. 定义一个函数,输入名字,输出"欢迎加入修仙界,[名字]!"

  2. 写一个函数计算两数和,返回结果。用它算1+1=?

  3. 创建函数模拟掷骰子(random模块),返回1-6随机数。调用几次看运气!

练习题答案与解释

  1. 欢迎函数:

    python 复制代码
    def welcome(name):
        print(f"欢迎加入修仙界,{name}!")
    
    welcome("王麻子")  # 示例调用

    解释: 定义函数welcome接受参数name,并使用print输出欢迎消息。这练习了函数定义、参数传递和调用,封装了重复操作。

  2. 加法函数:

    python 复制代码
    def add(a, b):
        return a + b
    
    result = add(1, 1)
    print(result)  # 输出: 2

    解释: 函数add接受两个参数并返回它们的和。调用时传入1和1,演示了return语句的重要性,用于获取计算结果。

  3. 掷骰子函数:

    python 复制代码
    import random
    
    def roll_dice():
        return random.randint(1, 6)
    
    print(roll_dice())  # 示例调用,可能输出3
    print(roll_dice())  # 另一次,可能输出5

    解释: 导入random模块,函数roll_dice使用randint生成随机数。这介绍了模块导入和无参数函数,模拟随机事件如修仙抽签。

本章知识点总结

  • def定义函数,parameters输入,return输出。

  • 调用函数重复使用代码。

  • 默认参数和可变参数让函数更灵活。

  • 函数是代码的法宝,封装好,修仙路更顺!

相关推荐
闲人编程11 小时前
用Python控制硬件:Raspberry Pi项目初体验
开发语言·python·raspberry·pi·codecapsule·控制硬件
间彧11 小时前
CAP定理:Partition tolerance(分区容错性)详解
后端
寻星探路11 小时前
测试开发话题10---自动化测试常用函数(2)
java·前端·python
鸢尾掠地平11 小时前
Python中常用内置函数上【含代码理解】
开发语言·python
萧鼎11 小时前
Python 图像处理利器:Pillow 深度详解与实战应用
图像处理·python·pillow
高洁0111 小时前
大模型-详解 Vision Transformer (ViT)
人工智能·python·深度学习·算法·transformer
Python私教12 小时前
PyQt:用 Python 打造原生级桌面应用的强大框架
后端
Python私教12 小时前
用 PyQt 开发一个桌面计算器:从零到完整实战指南
后端
Mos_x12 小时前
Spring 中的 @ExceptionHandler 注解详解与应用
java·后端
执笔论英雄12 小时前
【大模型推理】sglang 源码学习设计模式: 策略和访问者
python·学习·设计模式