Python练手小项目

计算器

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

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之间的数字,用户需要猜这个数字,程序会提示猜大了还是猜小了,直到猜对为止。

python 复制代码
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  # 结束循环

简单的记事本

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

python 复制代码
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: ")) - 1
    if 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.")  # 处理无效选择

简单的联系人管理系统

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

python 复制代码
contacts = {}  # 初始化一个空字典来存储联系人

# 添加联系人的函数
def add_contact():
    name = input("Enter contact name: ")
    phone = input("Enter contact phone number: ")
    contacts[name] = phone
    print("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.")  # 处理无效选择

简单的待办事项列表

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

python 复制代码
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: ")) - 1
    if 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.")  # 处理无效选择
相关推荐
CCblandy13 分钟前
前缀缓存命中率不靠引擎靠排列:本机仿真 3 轮,易变字段放开头 98.0%→0.0%
人工智能·python·算法·自然语言处理·性能优化
Sakura_j_h_38 分钟前
给 FastAPI 接大模型:超时、重试和 token 成本该怎么管
python·大模型·fastapi·超时重试·token计费
forest_0943 分钟前
用Python复刻ClaudeDuet:主动式Agent四件套,定时晨报、后台巡检、危险动作审批(附完整可运行代码)
人工智能·python·架构·prompt·agi
小小张说故事1 小时前
Python 的函数调用到底贵在哪?拆开一次 call:51 纳秒栈帧与 *args 的 40 纳秒罚单
python
程序猿乐锅2 小时前
【从0-1学习Python | 第七篇】Python 面向对象基础
开发语言·笔记·后端·python·学习·1024程序员节
lzqrzpt2 小时前
太阳能控制器选型要点:电路工艺与工程适配技术解析
python·1024程序员节
databook3 小时前
时间序列数据中,如何找出缺失值
python·数据分析
小小龙学IT4 小时前
Python Polars 高性能数据处理引擎深度解析
开发语言·python·rust·1024程序员节
csdn_aspnet4 小时前
JavaScript 未排序数组中第 k 个最小/最大元素 (预期线性时间)
python
quantdash_cc4 小时前
如何利用标的信息为研究股票池补充名称和交易所信息?
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash