Python 函数、模块、异常处理 超详细入门教程

一、Python 函数(Function)

函数就是把一段代码打包起来,方便重复使用。

1. 定义函数

复制代码
# 定义:def 函数名(参数):
def say_hello(name):
    print(f"你好,{name}!")

2. 调用函数

复制代码
say_hello("小明")  # 输出:你好,小明!

3. 带返回值(return)

复制代码
def add(a, b):
    return a + b  # 返回结果

result = add(3, 5)
print(result)  # 8

4. 默认参数

复制代码
def greet(name="游客"):
    print(f"欢迎,{name}")

greet()          # 欢迎,游客
greet("小红")    # 欢迎,小红

5. 可变参数(*args)

复制代码
def sum_all(*nums):
    total = 0
    for n in nums:
        total += n
    return total

print(sum_all(1,2,3,4))  # 10

二、Python 模块(Module)

模块就是一个 .py 文件,用来存放函数、变量、类,方便代码管理。

1. 自己写一个模块

新建文件 my_utils.py

复制代码
# my_utils.py
def add(a,b):
    return a+b

def minus(a,b):
    return a-b

2. 导入模块使用

复制代码
import my_utils

print(my_utils.add(2,3))  # 5

3. 从模块导入指定函数

复制代码
from my_utils import add
print(add(5,5))  # 10

4. 常用内置模块

复制代码
import math
print(math.sqrt(16))  # 4.0

import random
print(random.randint(1,10))  # 随机数

三、Python 异常处理(Error Handling)

程序出错不会崩溃,而是优雅提示错误。

1. 基本语法

复制代码
try:
    # 可能出错的代码
    num = int(input("请输入数字:"))
except ValueError:
    # 出错了执行这里
    print("你输入的不是数字!")
else:
    # 没出错执行这里
    print("你输入的是:", num)
finally:
    # 无论是否出错,都会执行
    print("程序结束")

2. 捕获多种异常

复制代码
try:
    a = 10 / 0
    list = [1,2]
    print(list[10])
except ZeroDivisionError:
    print("不能除以0")
except IndexError:
    print("下标越界")

3. 抛出异常(主动报错)

复制代码
def check_age(age):
    if age < 0:
        raise ValueError("年龄不能为负数")

check_age(-5)

三部分核心总结

函数

  • def 函数名(): 定义
  • return 返回值
  • 可以带参数、默认参数、可变参数

模块

  • 一个 .py 就是一个模块
  • import 模块名 使用
  • 方便代码复用和管理

异常处理

  • try...except... 捕获错误
  • 程序不会崩溃
  • 可以捕获多种异常、主动抛异常
相关推荐
扫地僧9851 小时前
一个基于 PyTorch 手语翻译模型Xuanmen_Net
人工智能·pytorch·python
搬砖的小码农_Sky1 小时前
Windows环境下OpenClaw本地部署完整指南
人工智能·windows·ai·人机交互·agi
苏州IT威翰德1 小时前
苏州IT基础架构IQ/OQ/PQ确认服务 | 服务器网络验证
开发语言·php
Xin_ye100861 小时前
C# 零基础到精通教程 - WPF 专题二:数据绑定与 MVVM
开发语言·c#·wpf
白狐_7981 小时前
从功能开发到开源维护:一个 Python 可视化项目的 Git 分支、维护文件与 PR 流程实践
git·python·开源
我是一颗柠檬1 小时前
【Java后端技术亮点】Feed流三级缓存设计,从10秒到100毫秒的优化实战
java·开发语言·后端·缓存
兆。1 小时前
LangChain文档处理集成指南:面向知识管理开发者
开发语言·langchain·c#
人道领域1 小时前
Windows 保姆级 Docker 安装教程(WSL2 版),一篇入门docker
windows·docker·容器
Brilliantwxx1 小时前
【算法从零到千】【1-7】 双指针算法
开发语言·c++·笔记·算法·leetcode·推荐算法