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
相关推荐
柴 基13 分钟前
Jupyter Notebook 使用指南
ide·python·jupyter
新手小新1 小时前
C++游戏开发(2)
开发语言·前端·c++
Python×CATIA工业智造1 小时前
Pycaita二次开发基础代码解析:几何体重命名与参数提取技术
python·pycharm·pycatia
你的电影很有趣2 小时前
lesson30:Python迭代三剑客:可迭代对象、迭代器与生成器深度解析
开发语言·python
程序员编程指南3 小时前
Qt 嵌入式界面优化技术
c语言·开发语言·c++·qt
【上下求索】4 小时前
学习笔记090——Ubuntu 中 UFW 防火墙的使用
笔记·学习·ubuntu
q__y__L4 小时前
C#线程同步(二)锁
开发语言·性能优化·c#
成成成成成成果4 小时前
揭秘动态测试:软件质量的实战防线
python·功能测试·测试工具·测试用例·可用性测试
二川bro4 小时前
第二篇:Three.js核心三要素:场景、相机、渲染器
开发语言·javascript·数码相机
云泽8084 小时前
数据结构前篇 - 深入解析数据结构之复杂度
c语言·开发语言·数据结构