当前位置: 首页 > 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;例如学习率和折扣因子。本文将介绍这些参数的…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表&#xff1f;1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

基于数字孪生的水厂可视化平台建设:架构与实践

分享大纲&#xff1a; 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年&#xff0c;数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段&#xff0c;基于数字孪生的水厂可视化平台的…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

Python 包管理器 uv 介绍

Python 包管理器 uv 全面介绍 uv 是由 Astral&#xff08;热门工具 Ruff 的开发者&#xff09;推出的下一代高性能 Python 包管理器和构建工具&#xff0c;用 Rust 编写。它旨在解决传统工具&#xff08;如 pip、virtualenv、pip-tools&#xff09;的性能瓶颈&#xff0c;同时…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关

在水泥厂的生产流程中&#xff0c;工业自动化网关起着至关重要的作用&#xff0c;尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关&#xff0c;为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多&#xff0c;其中不少设备采用Devicenet协议。Devicen…...

rm视觉学习1-自瞄部分

首先先感谢中南大学的开源&#xff0c;提供了很全面的思路&#xff0c;减少了很多基础性的开发研究 我看的阅读的是中南大学FYT战队开源视觉代码 链接&#xff1a;https://github.com/CSU-FYT-Vision/FYT2024_vision.git 1.框架&#xff1a; 代码框架结构&#xff1a;readme有…...