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
相关推荐
yumgpkpm2 分钟前
CMP(类ClouderaCDP7.3(404次编译) )完全支持华为鲲鹏Aarch64(ARM)POC报告
大数据·hive·hadoop·python·elasticsearch·hbase·cloudera
一只小透明啊啊啊啊8 分钟前
Java的中间件
java·开发语言·中间件
前进的李工10 分钟前
LeetCode hot100:560 和为k的子数组:快速统计法
python·算法·leetcode·前缀和·哈希表
学编程就要猛23 分钟前
数据结构初阶:Java中的ArrayList
java·开发语言·数据结构
JH307325 分钟前
10分钟理解泛型的通配符(extends, super, ?)
java·开发语言·windows
用户37215742613533 分钟前
Python 高效实现 Excel 与 TXT 文本文件之间的数据转换
python
Tony Bai1 小时前
【Go模块构建与依赖管理】01 前世今生:从 GOPATH 的“混乱”到 Go Modules 的“秩序”
开发语言·后端·golang
缺点内向1 小时前
Java 使用 Spire.XLS 库合并 Excel 文件实践
java·开发语言·excel
AndrewHZ1 小时前
【图像处理基石】图像滤镜的算法原理:从基础到进阶的技术解析
图像处理·python·opencv·算法·计算机视觉·滤镜·cv
py有趣2 小时前
LeetCode算法学习之移动0
学习·算法·leetcode