首页 > 编程语言 >python实操案例——小白篇

python实操案例——小白篇

时间:2024-11-02 09:51:01浏览次数:5  
标签:return 数字 示例 python 列表 小白篇 实操 输入 numbers

目录


在这里插入图片描述

案例 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猜数字游戏随机生成一个数字,让用户猜测并提示对错随机生成数字,用户输入并判断大小验证数字输入捕获非数字输入统计总猜测次数、限制最大猜测次数

标签:return,数字,示例,python,列表,小白篇,实操,输入,numbers
From: https://blog.csdn.net/2301_82270827/article/details/143446296

相关文章

  • python并发+进程+线程编程超全讲解
    文章目录并发编程基本概念操作系统发展史史前时代手工操作——穿孔卡片批处理系统——磁带存储联机批处理系统脱机批处理系统多道系统多道程序设计技术多道批处理系统分时系统实时系统通用操作系统操作系统的进一步发展个人计算机操作系统网络操作系统分布式操作......
  • 使用Python中的DrissonPage库爬取小说网站并保存章节内容(bqg)
    前言在这个教程中,我们将学习如何使用Python结合DrissionPage库来自动化浏览器操作,从而从一个小说网站(bqg)上抓取小说的章节链接和内容,并将这些内容保存到本地文件。本文将详细介绍整个过程,并提供完整的代码示例。准备工作在开始之前,请确保已经安装了以下Python库:driss......
  • 基于django的在线购物商城推荐系统 python个性化购物商城推荐系统的设计与开发 爬虫
    基于django的在线购物商城推荐系统python个性化购物商城推荐系统的设计与开发爬虫排行榜可视化数据基于流行度的热点推荐平均加权混合推荐协同过滤推荐大数据机器学习深度学习OnlineShopRecommendPy一、项目简介1、开发工具和使用技术Pycharm、Python3及以上版......
  • 基于Python爬虫与文本挖掘的网络舆情监控系统【附源码】
    基于Python爬虫与文本挖掘的网络舆情监控系统效果如下:系统登录界面注册页面界面管理员主界面用户界面网络舆情管理界面看板详细页面系统简介界面用户主界面网络舆情界面研究背景随着网络空间舆论的日益活跃,其对社会事件的影响愈发显著。企业和组织需要......
  • D55【python 接口自动化学习】- python基础之模块与标准库
     day55练习:实现求导学习日期:20241101学习目标:模块与标准库--70小试牛刀:如何使用Python为函数求导?学习笔记:需求分析使用第三方模块实现函数求导编写程序并测试#求导fromsympyimportDerivative,Symbolx=Symbol('x')y=x*x+3*x+2d=Derivative(y,x)pri......
  • D52【python 接口自动化学习】- python基础之模块与标准库
    day52标准库学习日期:20241029学习目标:模块与标准库--67标准库:Python默认提供的便携功能有哪些?学习笔记标准库中的常见组件如何通过官方文档学习标准fromurllib.requestimporturlopenwithurlopen('http://www.baidu.com')asf:print(f.read(300)......
  • 二十八、Python基础语法(面向对象-下)
    一、self从函数的语法上来看,self是形参,是一个普通的参数,那么在调用的时候,就需要传递实参值。从调用上看,我们没有给self这个形参传递实参值,但是Python解释器会自动的将调用这个方法的对象,作为实参值传递给self。classDog:defeat(self):prin......
  • 二十六、Python基础语法(函数进阶-下)
    一、多值参数多值参数(可变参数、不定长参数):有的函数不确定参数有几个,在一个普通的参数前面加上一个*,这个参数就变为不定参数。可以接收任意多个位置传参的数据,类型为元组。deftest(name,*args,sex='男'):print(name,args,sex)#传递3个参数test('张三',25,se......
  • 初识Python从入门到精通—— 语法及入门 1( 专为Python零基础)
    本文前4章为学习python的辅助章节,简单了解即可,可根据自身情况进行选择学习。程序:指挥计算机工作的指令序列。1.计算机如何处理程序?按照冯·诺依曼存储程序的原理,计算机的工作流程大致如下:1.用户打开程序,程序开始执行;2.操作系统将程序内容和相关数据送入计算机的内存......
  • 毕业设计:电影推荐系统 协同过滤推荐算法 深度学习 Python 爬虫 豆瓣电影 LSTM算法✅
    博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业项目实战6年之久,选择我们就是选择放心、选择安心毕业✌>......