python实操案例——小白篇

目录

  • 案例 1:简单计算器
  • 详细步骤
  • 代码示例
  • 说明
  • 案例 2:判断奇偶数并校验输入
  • 详细步骤
  • 代码示例
  • 说明
  • 案例 3:计算列表平均值
  • 详细步骤
  • 代码示例
  • 说明
  • 案例 4:查找最大值和最小值
  • 详细步骤
  • 代码示例
  • 说明
  • 案例 5:统计字符串中的字符
  • 详细步骤
  • 代码示例
  • 说明
  • 案例 6:生成斐波那契数列
  • 详细步骤
  • 代码示例
  • 说明
  • 案例 7:文件读写操作
  • 详细步骤
  • 代码示例

  • 案例 1:简单计算器

    目标:创建一个多功能计算器,支持加法、减法、乘法、除法操作,并包含输入验证和错误处理。

    详细步骤
    1. 定义计算器函数:接受两个数字和一个操作符作为输入参数。
    2. 操作符判断:通过if-elif语句判断操作符,选择相应的计算。
    3. 错误处理:处理输入的除数为零的情况,避免程序崩溃。
    4. 输出结果:根据运算输出结果。
    代码示例
    def calculator(num1, num2, operator):
        try:
            if operator == '+':
                return num1 + num2
            elif operator == '-':
                return num1 - num2
            elif operator == '*':
                return num1 * num2
            elif operator == '/':
                if num2 == 0:
                    return "错误:不能除以零"
                return num1 / num2
            else:
                return "无效的操作符"
        except TypeError:
            return "请输入有效的数字"
    
    # 主程序
    try:
        num1 = float(input("输入第一个数字: "))
        num2 = float(input("输入第二个数字: "))
        operator = input("输入操作符 (+, -, *, /): ")
        result = calculator(num1, num2, operator)
        print(f"结果: {result}")
    except ValueError:
        print("输入错误,请确保输入的是数字")
    
    说明
  • 异常处理try-except块用于捕获用户输入的类型错误或操作符错误。
  • 输入验证:在主程序中增加了数字输入验证,避免非数字输入导致的崩溃。
  • 功能扩展:可以添加取余、幂次运算等其他运算符,进一步增强功能。

  • 案例 2:判断奇偶数并校验输入

    目标:编写一个函数,判断用户输入的数字是奇数还是偶数,并包含输入验证。

    详细步骤
    1. 定义函数:定义一个函数check_odd_even,接收一个数字作为参数。
    2. 判断逻辑:使用条件语句判断数字是否为偶数。
    3. 异常处理:确保用户输入的内容为整数。
    代码示例
    def check_odd_even(number):
        try:
            number = int(number)
            if number % 2 == 0:
                return "偶数"
            else:
                return "奇数"
        except ValueError:
            return "输入无效,请输入一个整数"
    
    # 主程序
    num = input("输入一个数字: ")
    print(check_odd_even(num))
    
    说明
  • 输入验证:在函数中处理非整数输入。
  • 扩展建议:可以将判断结果保存到列表中,以便后续统计或处理。

  • 案例 3:计算列表平均值

    目标:计算用户输入的一组数字的平均值,包含非数字输入的验证。

    详细步骤
    1. 输入处理:提示用户输入一组数字,并使用空格分隔。
    2. 列表解析:将用户输入的数据转为浮点数列表。
    3. 计算平均值:使用sumlen函数计算平均值。
    4. 异常处理:捕获非数字输入的异常,提示用户重新输入。
    代码示例
    def average(numbers):
        try:
            return sum(numbers) / len(numbers) if len(numbers) > 0 else 0
        except TypeError:
            return "输入的列表中包含非数字元素"
    
    # 主程序
    try:
        numbers = list(map(float, input("输入一组数字,用空格分隔: ").split()))
        print(f"平均值: {average(numbers)}")
    except ValueError:
        print("输入无效,请确保输入的是数字")
    
    说明
  • 异常捕获:在输入过程中捕获ValueError异常,避免非数字导致的程序崩溃。
  • 代码优化:可以在average函数中增加检测空列表的逻辑,确保除零错误不发生。

  • 案例 4:查找最大值和最小值

    目标:编写一个函数,在用户输入的数字列表中查找最大值和最小值,并包含数据验证。

    详细步骤
    1. 定义查找函数:使用minmax函数查找最小值和最大值。
    2. 输入处理:将用户输入的字符串转换为整数列表。
    3. 异常处理:确保输入内容有效。
    代码示例
    def find_min_max(numbers):
        if not numbers:
            return "列表为空"
        return min(numbers), max(numbers)
    
    # 主程序
    try:
        numbers = list(map(int, input("输入一组数字,用空格分隔: ").split()))
        min_val, max_val = find_min_max(numbers)
        print(f"最小值: {min_val}, 最大值: {max_val}")
    except ValueError:
        print("输入无效,请确保输入的是整数")
    
    说明
  • 空列表处理:函数内部处理空列表的情况,确保程序健壮性。
  • 扩展建议:可以扩展为返回最大值、最小值的索引位置。

  • 案例 5:统计字符串中的字符

    目标:编写一个程序,统计用户输入字符串中每个字符的出现次数,忽略空格。

    详细步骤
    1. 定义统计函数:创建一个字典存储每个字符的计数。
    2. 统计逻辑:遍历字符串,为每个字符更新计数。
    3. 忽略空格:判断字符是否为空格,非空格字符进行统计。
    代码示例
    def count_characters(string):
        char_count = {}
        for char in string:
            if char != " ":
                char_count[char] = char_count.get(char, 0) + 1
        return char_count
    
    # 主程序
    string = input("输入字符串: ")
    char_count = count_characters(string)
    for char, count in char_count.items():
        print(f"'{char}': {count}")
    
    说明
  • 优化建议:使用collections.Counter模块可以简化统计过程。
  • 扩展建议:可以将结果保存为文件或进行排序展示。

  • 案例 6:生成斐波那契数列

    目标:编写一个函数生成斐波那契数列,并包含数据验证和扩展。

    详细步骤
    1. 定义生成函数:使用循环生成斐波那契数列。
    2. 输入验证:确保用户输入的项数为正整数。
    3. 生成逻辑:按斐波那契数列规则生成数字。
    代码示例
    def fibonacci(n):
        if n <= 0:
            return "输入必须为正整数"
        fib_sequence = [0, 1]
        for i in range(2, n):
            fib_sequence.append(fib_sequence[-1] + fib_sequence[-2])
        return fib_sequence[:n]
    
    # 主程序
    try:
        n = int(input("输入斐波那契数列的项数: "))
        print(f"斐波那契数列: {fibonacci(n)}")
    except ValueError:
        print("输入无效,请输入一个整数")
    
    说明
  • 扩展建议:生成更长的斐波那契数列或限制生成项数。

  • 案例 7:文件读写操作

    目标:创建一个文本文件,写入内容并读取,包含错误处理。

    详细步骤
    1. 写入内容:使用with open写入内容到文件。
    2. 读取内容:打开文件读取内容,确保文件路径正确。
    3. 异常处理:增加文件不存在时的异常处理。
    代码示例
    def write_to_file(filename, content):
        with open(filename, 'w') as file:
            file.write(content)
    
    def read_from_file(filename):
        try:
            with open(filename, 'r') as file:
                return file.read()
        except FileNotFoundError:
            return "文件不存在"
    
    # 主程序
    filename = 'example.txt'
    content = input("输入要写入的内容: ")
    write_to_file(filename, content)
    print("文件内容:")
    print(read_from_file(filename))
    

    案例编号 案例名称 功能描述 关键步骤 输入验证 错误处理 扩展建议
    1 简单计算器 实现加法、减法、乘法和除法运算 定义计算器函数,判断操作符,输出结果 验证数字输入 检查零除错、无效操作符 增加取余、幂次运算等更多操作符
    2 判断奇偶数 判断输入数字是奇数还是偶数 定义函数判断数字是否能整除2 验证整数输入 捕获非整数输入 结果保存到列表中,便于统计或处理
    3 计算列表平均值 计算用户输入的数字列表的平均值 将输入数据转换为浮点数列表,计算平均值 验证数字输入 捕获非数字输入 空列表返回零,确保除零不发生
    4 查找最大最小值 找出数字列表中的最大值和最小值 使用minmax函数找最大值和最小值 验证数字输入 检查空列表 返回最大/最小值的索引位置
    5 字符统计 统计字符串中每个字符的出现次数(忽略空格) 遍历字符串,非空格字符计数 验证字符串输入 无需额外处理 使用Counter模块,按字符频率排序
    6 斐波那契数列生成 生成指定长度的斐波那契数列 使用循环生成数列,返回前n 验证正整数输入 检查负数或零输入 增加生成项数限制,防止过大
    7 文件读写操作 写入文本内容到文件并读取文件内容 写入内容至文件,读取文件并输出内容 验证文件路径 文件不存在错误 增加文件追加写入模式
    8 猜数字游戏 随机生成一个数字,让用户猜测并提示对错 随机生成数字,用户输入并判断大小 验证数字输入 捕获非数字输入 统计总猜测次数、限制最大猜测次数

    作者:小知学网络

    物联沃分享整理
    物联沃-IOTWORD物联网 » python实操案例——小白篇

    发表回复