6个月Python学习计划 Day 8 - Python 函数基础

第一周

Day 1 - Python 基础入门 & 开发环境搭建
Day 2 - 条件判断、用户输入、格式化输出
Day 3 - 循环语句 + range 函数
Day 4 - 列表 & 元组基础
Day 5 - 字典(dict)与集合(set)
Day 6 - 综合实战:学生信息管理系统
Day 7 - 复盘 + 测试日


🎯 今日目标:

  1. 理解函数的作用
  2. 掌握自定义函数的语法
  3. 学会传参(位置参数、默认参数)
  4. 了解函数的返回值

📚 学习内容详解:

✅ 1. 什么是函数?

函数就是一段可以重复使用的代码块,它可以通过名字调用来执行特定的功能。

有内置函数(如 print()、len()),也可以自定义。

✅ 2. 定义一个函数(使用 def)

python 复制代码
def greet():
    print("Hello, Python!")

调用函数:

python 复制代码
greet()  # 输出:Hello, Python!

✅ 3. 函数参数(位置参数 + 默认参数)

python 复制代码
def greet_user(name):
    print("你好," + name + "!")

greet_user("小明")

默认参数:

python 复制代码
def greet_user(name="同学"):
    print("你好," + name + "!")

greet_user()           # 输出:你好,同学!
greet_user("小红")     # 输出:你好,小红!

✅ 4. 返回值 return

python 复制代码
def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 输出:8

函数可以返回任意类型的数据:字符串、列表、元组、布尔值等。

🧠 小练习:

  1. 定义一个函数 is_even(num),判断一个数字是否是偶数。

    python 复制代码
    def is_even(num):
        return num%2 == 0
    
    print(is_even(4)) # 输出:True
    print(is_even(7)) # 输出:False
  2. 定义一个函数 circle_area(radius),返回圆的面积(公式:π*r²,π 取 3.14)。

    python 复制代码
    def circle_area(radius):
        pi = 3.14
        return pi* radius ** 2
    
    print(circle_area(5))  # 输出:78.5
  3. 定义一个函数 say_hello(name="同学"),带默认参数,输出打招呼语句。

    python 复制代码
    def say_hello(name="同学"):
        """打印问候语"""
        print(f'Hello, {name}')
    say_hello() # 输出:Hello, 同学
    say_hello('Sally') # 输出:Hello, Sally

📌 今日作业

  1. 定义一个函数,输入姓名和年龄,打印介绍信息

    python 复制代码
    def introduce(name, age):
        print(f"我叫{name},今年{age}岁。")
    introduce("小李", 20)  # 输出:我叫小李,今年20岁。
  2. 定义一个函数,返回列表中最大值

    python 复制代码
    def find_max(numbers):
        return max(numbers)
    print(find_max([90, 80, 95, 70]))# 输出:95
相关推荐
困死,根本不会34 分钟前
Kivy+Buildozer 打包 APK 踩坑:python-for-android 克隆失败
开发语言·php·kivy
咸鱼2.03 小时前
【java入门到放弃】跨域
java·开发语言
sg_knight3 小时前
设计模式实战:模板方法模式(Template Method)
python·设计模式·模板方法模式
FreakStudio3 小时前
ESP32居然能当 DNS 服务器用?内含NCSI欺骗和DNS劫持实现
python·单片机·嵌入式·面向对象·并行计算·电子diy
skiy3 小时前
java与mysql连接 使用mysql-connector-java连接msql
java·开发语言·mysql
一念春风3 小时前
智能文字识别工具(AI)
开发语言·c#·wpf
لا معنى له3 小时前
WAM与AC-WM:具身智能时代的世界动作模型与动作条件世界模型
人工智能·笔记·学习
乐观勇敢坚强的老彭4 小时前
2026全国青少年信息素养大赛考纲
python·数学建模
桦04 小时前
【C++复习】:继承
开发语言·c++