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.")  # 处理无效选择

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/388058.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Moving Object Segmentation: All You Need Is SAM(and Flow) 论文详解

系列文章目录 文章目录 系列文章目录前言摘要1 引言2 相关工作3 SAM Preliminaries4 帧级分割Ⅰ&#xff1a;以流作为输入5 帧级分割Ⅱ&#xff1a;以流为提示6 序列级掩膜关联7 实验7.1 数据集7.2 评价指标7 .3 实施细节7.4 消融实验7.5 定量结果7 .定性可视化 8 结论致谢附录…

Ollama0.3.0 + llama3.1本地部署

Ollama0.3.0 llama3.1本地部署 安装Ollama 官网下载安装包 https://ollama.com/download ​​ 根据系统选择对应版本 安装完成后&#xff0c;电脑右下角会出现ollama程序图标&#xff0c;表示ollama正在运行。 ​​ 打开cmd命令 下载Llama3.1 输入ollama&#xff0c…

从“线缆迷宫”到“数字通途”:一机一网助力成天泰园区网络升级

(文 林海宾/深圳速锦网络科技有限公司) 林海宾,现任深圳速锦网络科技有限公司(以下简称速锦网络)的项目总监,一个入行十年、经验老道的数字化升级”操盘手“。他曾经主导过中国农业银行深圳分行130多个网点以及美的珠海工厂等数字化建设升级项目。在2024年的五一,他帮助深圳市…

【MATLAB源码】机器视觉与图像识别技术(7)续---BP神经网络

系列文章目录在最后面&#xff0c;各位同仁感兴趣可以看看&#xff01; BP神经网络 第一节、BP网络定义第二节、BP网络结构及其特点第三节、信息传播方式 信息的正向传播&#xff1a;实质是计算网络的输出误差的反向传播&#xff1a;实质是学习过程第四节、 BP网络的算法流程…

视频怎么在尽量不损害画质的前提下压缩?试试这4款视频压缩神器

4个视频压缩神器&#xff0c;帮你在不损画质的前提下满足压缩需求&#xff1a; 1、嗨格式压缩大师 关键词&#xff1a;高效、批量 直达链接>>yasuo.hgs.cn 嗨格式压缩大师是一款免费的文件压缩工具&#xff0c;支持视频、图片、PDF、PPT等文件快速、批量压缩&#xff…

代码随想录 day 28 贪心

第八章 贪心算法 part02 贪心 局部最优解推出全局最优 &#xff0c;而且想不到反例&#xff0c;那么就试一试贪心 将问题分解为若干个子问题 找出适合的贪心策略 求解每一个子问题的最优解 将局部最优解堆叠成全局最优解 只要想清楚 局部最优 是什么&#xff0c;如果推导出全局…

XR-Frame 计算相机与场景物体的距离

如下哦 const cameraTransform this.scene.getElementById(camera).getComponent(transform)const modelTransform this.scene.getElementById(yourNodeId).getComponent("transform");if (cameraTransform.worldPosition.distanceTo(modelTransform.worldPosition…

pip install albumentations安装下载遇19kB/s超级慢细水管解决办法

albumentations 是一个用于图像增强的 Python 库&#xff0c;它提供了丰富的图像变换功能&#xff0c;可以用于数据增强&#xff0c;从而提高深度学习模型的泛化能力。 直接安装命令&#xff1a; pip install albumentations但是如果半夜遇到这种19kB/s的下载速度 为头发着想&…

【C++】C++11新增语法(右值引用、完美转法)

文章目录 1.C11新增常用语法1.1 统一的列表初始化1.2 initializer_list初始化1.3 声明相关1.4 继承与多态相关 2. 右值引用与移动语义2.1 左值引用与右值引用2.2 右值引用与移动语义的使用场景2.3 右值引用引用左值(move) 3. 完美转发4. 新的类功能4.1 新增两个默认成员函数4.2…

记录两道关于编码解码的问题

环境&#xff1a;php环境即可&#xff0c;也可使用phpstudy。 参考文章: 深入理解浏览器解析机制和XSS向量编码-CSDN博客(很重要) HTML 字符编码&#xff08;自我复习&#xff09;-CSDN博客 例题1&#xff1a; <?php header("X-XSS-Protection: 0"); $xss …

Jangow-1.0.1靶机漏洞复现(未完成)

首先&#xff0c;这个靶机只能使用VirtualBox打开&#xff0c;靶机下载地址为 https://download.vulnhub.com/jangow/jangow-01-1.0.1.ova 虚拟机软件下载地址为 Download_Old_Builds – Oracle VM VirtualBox 开启靶机后访问ip进入如下页面&#xff0c;点击site进入到一个…

昇思25天学习打卡营第16天|Diffusion扩散模型,DCGAN生成漫画头像

Diffusion扩散模型 关于扩散模型&#xff08;Diffusion Models&#xff09;有很多种理解&#xff0c;本文的介绍是基于denoising diffusion probabilistic model &#xff08;DDPM&#xff09;&#xff0c;DDPM已经在&#xff08;无&#xff09;条件图像/音频/视频生成领域取得…

MySQL:GROUP BY 分组查询

分组查询是SQL中一个非常强大的功能&#xff0c;它允许我们将数据按照一个或多个字段进行分组&#xff0c;并对每个分组进行聚合计算&#xff08;如求和、平均值、最大值、最小值等&#xff09;。在MySQL中&#xff0c;我们使用 GROUP BY 关键字来实现分组查询。 核心语法 SE…

Vue3自研开源Tree组件:人性化的拖拽API设计

针对Element Plus Tree组件拖拽功能API用的麻烦&#xff0c;小卷开发了一个API使用简单的JuanTree组件。拖拽功能用起来非常简单&#xff01; 文章目录 使用示例allowDragallowDrop支持节点勾选支持dirty检测后台API交互 源码实现 使用示例 组件的使用很简单&#xff1a; 通过…

4.1.2、操作系统-概述及进程管理-状态管理和前趋图

进出的组成和状态 进程是计算机中正在运行的程序的实例。它是操作系统进行资源分配和管理的基本单位,包括代码、数据和执行状态等信息。 进程的组成:进程控制块PCB(唯一标志)、程序(描述进程要做什么)、数据(存放进程执行时所需数据)。 我们电脑中的QQ影音和网易云音乐可以并…

小米手机怎么查看电池剩余容量

最近发现自己的小米11pro的待机时间越来越短了&#xff0c;怀疑是电池剩余容量太小了&#xff0c;希望测下电池剩余容量好打算是否要更换下电池。 1.抓取bug测试 首先打开拨号界面&#xff0c;输入*#*#284#*#*然后开始抓取日志。 等待bug报告生成完毕&#xff0c;然后点击就…

Git原理与用法系统总结

目录 Reference前言版本控制系统Git的诞生配置Git配置用户名和邮件配置颜色配置.gitignore文件 Git的基础用法初始化仓库克隆现有的仓库添加暂存文件提交变动到仓库比较变动查看日志Git回退Git重置暂存区 Git版本管理重新提交取消暂存撤销对文件的修改 Git分支Git分支的优势Git…

5、注册字符类设备

字符设备 cdev结构体 Linux中使用cdev结构体描述一个字符设备。结构体定义在include/linux/cdev.h 文件中&#xff0c; struct cdev{struct kobject kobj;struct module *owner; //所属模块const struct file_operations *ops; //文件操作结构体struct list_head lis…

《Java初阶数据结构》----5.<二叉树的概念及使用>

前言 大家好&#xff0c;我目前在学习java。之前也学了一段时间&#xff0c;但是没有发布博客。时间过的真的很快。我会利用好这个暑假&#xff0c;来复习之前学过的内容&#xff0c;并整理好之前写过的博客进行发布。如果博客中有错误或者没有读懂的地方。热烈欢迎大家在评论区…

综合点评!史上最强开源大模型Llama 3.1

在人工智能领域&#xff0c;开源模型一直是推动技术进步和创新的重要力量。 北美时间7月23日&#xff0c;Meta公司&#xff08;原Facebook&#xff09;宣布了一项重大突破&#xff1a;开源模型Llama 3.1的正式发布。这一举措预示着AI技术的又一次飞跃&#xff0c;Llama 3.1有望…