当前位置: 首页 > news >正文

Python练手小项目

计算器

创建一个简单的计算器,能够进行加、减、乘、除四种基本运算。

# 定义加法函数
def add(x, y):return x + y# 定义减法函数
def subtract(x, y):return x - y# 定义乘法函数
def multiply(x, y):return x * y# 定义除法函数
def divide(x, y):if y == 0:return "Error! Division by zero."  # 防止除以零return x / y# 打印操作选项
print("Select operation:")
print("1. Add")
print("2. Subtract")
print("3. Multiply")
print("4. Divide")# 获取用户选择的操作
choice = input("Enter choice(1/2/3/4): ")# 获取用户输入的两个数字
num1 = float(input("Enter first number: "))
num2 = float(input("Enter second number: "))# 根据用户选择的操作调用相应的函数
if choice == '1':print(f"{num1} + {num2} = {add(num1, num2)}")
elif choice == '2':print(f"{num1} - {num2} = {subtract(num1, num2)}")
elif choice == '3':print(f"{num1} * {num2} = {multiply(num1, num2)}")
elif choice == '4':print(f"{num1} / {num2} = {divide(num1, num2)}")
else:print("Invalid input")  # 处理无效输入

猜数字游戏

编写一个猜数字游戏,计算机随机生成一个1到100之间的数字,用户需要猜这个数字,程序会提示猜大了还是猜小了,直到猜对为止。

import random  # 导入随机数模块# 生成一个1到100之间的随机数
number_to_guess = random.randint(1, 100)
attempts = 0  # 初始化尝试次数print("Guess the number between 1 and 100")while True:guess = int(input("Enter your guess: "))  # 获取用户猜测的数字attempts += 1  # 尝试次数加一if guess < number_to_guess:print("Too low!")  # 提示猜的数字太小elif guess > number_to_guess:print("Too high!")  # 提示猜的数字太大else:print(f"Congratulations! You've guessed the number in {attempts} attempts.")  # 猜对了break  # 结束循环

简单的记事本

创建一个简单的记事本应用,用户可以添加、查看和删除笔记。

notes = []  # 初始化一个空列表来存储笔记# 添加笔记的函数
def add_note():note = input("Enter your note: ")notes.append(note)print("Note added!")# 查看所有笔记的函数
def view_notes():print("Your notes:")for i, note in enumerate(notes, 1):print(f"{i}. {note}")# 删除笔记的函数
def delete_note():view_notes()  # 先显示所有笔记note_index = int(input("Enter the note number to delete: ")) - 1if 0 <= note_index < len(notes):del notes[note_index]print("Note deleted!")else:print("Invalid note number")  # 处理无效输入# 主循环
while True:print("\n1. Add Note")print("2. View Notes")print("3. Delete Note")print("4. Exit")choice = input("Enter your choice: ")if choice == '1':add_note()elif choice == '2':view_notes()elif choice == '3':delete_note()elif choice == '4':break  # 退出循环else:print("Invalid choice. Please try again.")  # 处理无效选择

简单的联系人管理系统

创建一个简单的联系人管理系统,可以添加、查看、删除联系人。

contacts = {}  # 初始化一个空字典来存储联系人# 添加联系人的函数
def add_contact():name = input("Enter contact name: ")phone = input("Enter contact phone number: ")contacts[name] = phoneprint("Contact added!")# 查看所有联系人的函数
def view_contacts():print("Your contacts:")for name, phone in contacts.items():print(f"Name: {name}, Phone: {phone}")# 删除联系人的函数
def delete_contact():name = input("Enter the name of the contact to delete: ")if name in contacts:del contacts[name]print("Contact deleted!")else:print("Contact not found")  # 处理联系人未找到的情况# 主循环
while True:print("\n1. Add Contact")print("2. View Contacts")print("3. Delete Contact")print("4. Exit")choice = input("Enter your choice: ")if choice == '1':add_contact()elif choice == '2':view_contacts()elif choice == '3':delete_contact()elif choice == '4':break  # 退出循环else:print("Invalid choice. Please try again.")  # 处理无效选择

简单的待办事项列表

创建一个简单的待办事项列表应用,可以添加、查看和删除待办事项。

todo_list = []  # 初始化一个空列表来存储待办事项# 添加任务的函数
def add_task():task = input("Enter a new task: ")todo_list.append(task)print("Task added!")# 查看所有任务的函数
def view_tasks():print("Your tasks:")for i, task in enumerate(todo_list, 1):print(f"{i}. {task}")# 删除任务的函数
def delete_task():view_tasks()  # 先显示所有任务task_index = int(input("Enter the task number to delete: ")) - 1if 0 <= task_index < len(todo_list):del todo_list[task_index]print("Task deleted!")else:print("Invalid task number")  # 处理无效输入# 主循环
while True:print("\n1. Add Task")print("2. View Tasks")print("3. Delete Task")print("4. Exit")choice = input("Enter your choice: ")if choice == '1':add_task()elif choice == '2':view_tasks()elif choice == '3':delete_task()elif choice == '4':break  # 退出循环else:print("Invalid choice. Please try again.")  # 处理无效选择

相关文章:

Python练手小项目

计算器 创建一个简单的计算器&#xff0c;能够进行加、减、乘、除四种基本运算。 # 定义加法函数 def add(x, y):return x y# 定义减法函数 def subtract(x, y):return x - y# 定义乘法函数 def multiply(x, y):return x * y# 定义除法函数 def divide(x, y):if y 0:return…...

苹果手机通讯录恢复教程?3招速成指南

随着科技的不断进步&#xff0c;手机丢失、系统崩溃等意外情况也时有发生&#xff0c;一旦这些情况发生&#xff0c;我们宝贵的通讯录资料很可能会付诸东流。对此&#xff0c;本文为广大苹果手机用户提供一份简洁明了的通讯录恢复教程&#xff0c;让你轻松掌握苹果手机通讯录恢…...

python爬虫入门(五)之Re解析

一、什么是Re解析 “Re解析”是指使用正则表达式&#xff08;regular expression&#xff0c;简称regex&#xff09;进行文本解析或匹配的过程。 解析网页内容的三种方式&#xff1a; 1、bs4解析&#xff08;最简单&#xff09; 2、re解析&#xff08;解析速度最快&#xf…...

可靠的图纸加密软件,七款图纸加密软件推荐

大家好啊,我是小固,今天跟大家聊聊图纸加密软件。 作为一名设计师,我深知保护自己的知识产权有多重要。曾经就因为图纸泄露,差点血本无归,那个教训可真是惨痛啊!所以我今天就给大家推荐几款靠谱的图纸加密软件,希望能帮到你们。 固信软件https://www.gooxion.com/ 首先要隆重…...

【每日一题】【最短路】【BFS】小红走矩阵 “葡萄城杯”牛客周赛 Round 53 F题 C++

“葡萄城杯”牛客周赛 Round 53 F题 小红走矩阵 题目背景 “葡萄城杯”牛客周赛 Round 53 题目描述 n m n\times m nm的矩阵由障碍和空地组成&#xff0c;初始时小红位于起点 ( 1 , 1 ) (1,1) (1,1)&#xff0c;她想要前往终点 ( n , m ) (n,m) (n,m)。小红每一步可以往上…...

无线磁吸充电宝哪个牌子值得入手?什么牌子磁吸充电宝性价比高?

在当下科技日新月异的时期&#xff0c;无线磁吸充电宝成为了众多电子设备用户的得力助手。然而&#xff0c;面对市场上众多品牌和型号的无线磁吸充电宝&#xff0c;消费者常常陷入选择的困境&#xff1a;到底哪个牌子值得入手&#xff1f;什么牌子的磁吸充电宝性价比高&#xf…...

互联网摸鱼日报(2024-08-01)

互联网摸鱼日报(2024-08-01) 36氪新闻 氪星晚报 | Uber与比亚迪合作&#xff0c;将在平台上增加10万辆电动汽车&#xff1b;维维股份将收购大窑汽水&#xff1f;公司回应&#xff1a;消息不实&#xff1b;我国科学家取得全固态锂电池研究新突破 《死侍与金刚狼》&#xff0c;…...

Alpla003经典的价量背离的因子在可转债列表里的因子分析(附python代码)

原创文章第605篇&#xff0c;专注“AI量化投资、世界运行的规律、个人成长与财富自由"。 遗传算法给出的因子五花八门&#xff0c;可解释性不高。 强化学习原理不同&#xff0c;但结果类似。 大模型之前咱们尝试过&#xff0c;Quantlab3.9代码&#xff1a;内置大模型LL…...

进阶理解——typeof 、instanceof

typeof 、instance of 先聊聊JavaScript基本类型数据类型5种含值数据类型2种不含值类型 6种类型的*对象* typeofinstanceof总结进一步扩展一下具体讨论一下typeof局限性扩展判断方法 很多时候&#xff0c;回头望&#xff0c;理解会更深刻&#xff0c;也希望能帮助一些初学的同学…...

不同类型的生物反应器在支架成熟过程中具有哪些特点和应用?

3D Bioprinting of Human Tissues: Biofabrication, Bioinks, and Bioreactors是发表于《International Journal of Molecular Sciences》的一篇综述&#xff0c;详细介绍了3D生物打印人体组织的相关技术进展&#xff0c;包括数据处理、生物打印技术、生物墨水配方、生物反应器…...

8. Spring Ai之入门到精通(超级详细)

简介 2024年5月30号Spring AI 的 1.0.0 里程碑 1 版本发布。表明版本已正在巩固&#xff0c;并且大部分主要错误和问题已经解决&#xff0c;API基本已确定&#xff0c;不会发生很大的变化。 在与大模型集成方面&#xff0c;继LangChain4j之后&#xff0c;又一重大的框架诞生。标…...

寄存器和硬件的关系

寄存器也是一种存储器&#xff0c;只不过普通的存储器只能写和读。里面的数据并没有赋予什么实际意义。但是寄存器就不一样了&#xff0c;寄存器的每一位数据&#xff0c;都对应了硬件电路的状态。寄存器和外设的硬件电路&#xff0c;是可以进行互动的。所以&#xff0c;程序到…...

【WEB】ctfshow-萌新-web9-15

文章目录 题目介绍&#xff1a;题目分析&#xff1a;payload&#xff1a; 题目介绍&#xff1a; ctfshow-萌新计划-web9-15 <?php # flag in config.php include("config.php"); if(isset($_GET[c])){$c $_GET[c];if(preg_match("/system|exec|highlight…...

【Vulnhub靶场AI-WEB-1.0打靶教程】

第一步&#xff1a;查看虚拟机的ip 第二步&#xff1a;扫描ip下开放的80端口 第三步&#xff1a;扫描查到的ip地址下的目录 第四步&#xff1a;访问查到的目录 访问robot.txt 第五步:访问robot.txt显示出的目录 第六步&#xff1a;打开kali终端&#xff0c;使用sqlmap功能 sq…...

html实现酷炫美观的可视化大屏(十种风格示例,附源码)

文章目录 完整效果演示1.蓝色流线风的可视化大屏1.1 大屏效果1.2 大屏代码1.3 大屏下载 2.地图模块风的可视化大屏2.1 大屏效果2.2 大屏代码2.3 大屏下载 3.科技轮动风的可视化大屏3.1 大屏效果3.2 大屏代码3.3 大屏下载 4.蓝色海洋风的可视化大屏4.1 大屏效果4.2 大屏代码4.3 …...

【C++BFS算法 二分查找】2812. 找出最安全路径

本文涉及知识点 CBFS算法 C二分查找 LeetCode2812. 找出最安全路径 给你一个下标从 0 开始、大小为 n x n 的二维矩阵 grid &#xff0c;其中 (r, c) 表示&#xff1a; 如果 grid[r][c] 1 &#xff0c;则表示一个存在小偷的单元格 如果 grid[r][c] 0 &#xff0c;则表示一…...

轻触开关 KH-4.5X4.5X5.5H-STM

品  牌&#xff1a; kinghelm(金航标) 厂家型号&#xff1a; KH-4.5X4.5X5.5H-STM 封装&#xff1a; SMD 商品毛重&#xff1a; 0.317克(g) 包装方式&#xff1a; 编带...

3.redis客户端

1.命令行客户端 在安装redis的时候就已经安装好了&#xff0c;就是redis-cli redis-cli -h 127.0.0.1 -p 6379 -a 123456 -a 表示密码 -h 表示ip&#xff0c;不配置默认为本机 127.0.0.1 -p 表示端口&#xff0c;不配置默认为 6379 进入后可以输入ping&#xff0c;返回pong代表…...

Rust配置国内源,解决安装依赖慢问题

温馨提示&#xff1a;最新内容仅在原文更新。 国内源使用字节的RsProxy https://rsproxy.cn/ 解决rust-analyzer加载时间过长(请参考本文) 配置环境变量 Mac export RUSTUP_DIST_SERVER"https://rsproxy.cn" export RUSTUP_UPDATE_ROOT"https://rsproxy.cn/r…...

AI学习指南机器学习篇- Q学习的参数与调优

AI学习指南机器学习篇- Q学习的参数与调优 在强化学习领域中&#xff0c;Q学习是一种经典的算法&#xff0c;可以用来解决各种问题&#xff0c;包括游戏和机器人控制等。Q学习算法的性能很大程度上取决于一些重要的参数&#xff0c;例如学习率和折扣因子。本文将介绍这些参数的…...

深入解析PyTorch中.pth文件的保存与加载机制

1. 揭开.pth文件的神秘面纱 第一次接触PyTorch时&#xff0c;看到那些以.pth结尾的文件&#xff0c;你是不是也和我当初一样充满疑惑&#xff1f;这些看似普通的文件&#xff0c;实际上是PyTorch模型持久化的关键。简单来说&#xff0c;.pth文件就像是给AI模型拍的一张"照…...

LobeChat新手入门指南:从零开始,打造专属智能助手

LobeChat新手入门指南&#xff1a;从零开始&#xff0c;打造专属智能助手 1. 为什么选择LobeChat&#xff1f; 在当今数字化时代&#xff0c;智能对话系统已经成为提升工作效率和生活品质的重要工具。LobeChat作为一款开源的高性能聊天机器人框架&#xff0c;凭借其易用性和强…...

职场生存暗规则 DAY5:同事抢你功劳?用这 1 招让他偷鸡不成蚀把米|乐想屋

“本文来自「乐想屋」公众号&#xff0c;系列更新[职场反PUA30天觉醒计][职场生存暗规则]&#xff0c;读完你未必能立即升职加薪&#xff0c;但一定能避开那些让99%的人莫名出局的深坑。职场这场游戏&#xff0c;活下去&#xff0c;才能赢下去。”——————————————…...

使用VSCode调试TranslateGemma-27B模型调用

使用VSCode调试TranslateGemma-27B模型调用 1. 准备工作与环境配置 在开始调试TranslateGemma-27B模型之前&#xff0c;我们需要先搭建好开发环境。VSCode作为一款轻量级但功能强大的代码编辑器&#xff0c;提供了丰富的调试功能&#xff0c;特别适合深度学习项目的开发调试。…...

刚刚!美团开源LongCat-Next,全模态模型保姆级教程(非常详细),从入门到精通,建议收藏!

昨天下午刷到了美团龙猫团队又开源了一个新模型-LongCat-Next。 这次有所不同&#xff0c;是一个原生全模态模型&#xff0c;可以接受文本、语音、图像的输入&#xff0c;生成文本、语音、图像&#xff0c;激活参数3B。 在训练上&#xff0c;通过分词器-反分词器对&#xff0…...

终极指南:如何用Zotero PDF Translate插件快速突破学术语言壁垒

终极指南&#xff1a;如何用Zotero PDF Translate插件快速突破学术语言壁垒 【免费下载链接】zotero-pdf-translate 支持将PDF、EPub、网页内容、元数据、注释和笔记翻译为目标语言&#xff0c;并且兼容20多种翻译服务。 项目地址: https://gitcode.com/gh_mirrors/zo/zotero…...

FlowState Lab知识图谱构建应用:从非结构化文本中抽取实体与关系

FlowState Lab知识图谱构建应用&#xff1a;从非结构化文本中抽取实体与关系 1. 知识图谱构建的行业痛点 在信息爆炸的时代&#xff0c;企业每天都要处理海量的非结构化数据——技术文档、行业报告、会议记录、客户反馈等等。这些数据中蕴含着大量有价值的知识&#xff0c;但…...

Turbo实战:如何用任务编排优化你的Monorepo构建流程?以pnpm+vitepress为例

Turbo实战&#xff1a;如何用任务编排优化你的Monorepo构建流程&#xff1f;以pnpmvitepress为例 在当今前端工程化领域&#xff0c;Monorepo已成为管理复杂项目的标配方案。但当项目规模增长到一定程度时&#xff0c;传统的构建方式往往会面临效率瓶颈——每次全量构建耗时漫长…...

ARM Cortex-M中断状态寄存器实战:从配置到调试的完整指南

ARM Cortex-M中断状态寄存器实战&#xff1a;从配置到调试的完整指南 在嵌入式开发领域&#xff0c;中断处理是系统实时响应的核心机制。作为ARM Cortex-M系列处理器的开发者&#xff0c;深入理解中断状态寄存器(Interrupt Status Register)的工作原理和操作技巧&#xff0c;能…...

Avalonia预览器罢工了?别慌,手把手教你排查和修复‘无法加载axaml预览’的坑

Avalonia预览器崩溃自救指南&#xff1a;从错误日志到配置优化的全链路解决方案 当你正沉浸在Avalonia跨平台UI开发的流畅体验中&#xff0c;突然发现预览窗口变成一片空白&#xff0c;右下角弹出"无法加载axaml预览"的红色警告——这种突如其来的开发中断&#xff0…...