50个编程小项目列表

一、 命令行小工具 (CLI Tools)

这些工具在命令行中运行,让您专注于编程逻辑,而无需担心复杂的图形界面。

# 项目名称 简介与核心技能
1 单位转换器 (Unit Converter) 输入一个值和单位(如100cm),将其转换为另一个单位(如m)。
技能点: if/elif/else 或字典、数学运算、用户输入处理。
2 小费计算器 (Tip Calculator) 输入账单总额和满意度,计算应付的小费和总金额。
技能点: 数学运算、格式化输出、用户输入。
3 BMI 计算器 (Body Mass Index) 输入身高和体重,计算BMI指数并给出健康建议。
技能点: 数学运算、条件判断。
4 掷骰子模拟器 (Dice Roller) 模拟掷一个或多个骰子,并返回结果。
技能点: 随机数生成、循环。
5 石头剪刀布游戏 (Rock, Paper, Scissors) 与电脑玩石头剪刀布游戏。
技能点: 随机数、条件判断、用户输入。
6 密码生成器 (Simple Password Generator) 生成一个指定长度的随机密码。
技能点: 随机数、字符串操作、循环。
7 倒计时器 (Countdown Timer) 从指定时间开始倒计时,并在结束时提醒。
技能点: 时间库、循环、清屏操作。
8 简单的待办事项列表 (CLI Todo List) 在程序运行时,可以添加、查看和删除任务(无需保存到文件)。
技能点: 列表(数组)操作、循环、用户输入。
9 简易计算器 (Simple Calculator) 支持加、减、乘、除的基本运算。
技能点: 函数、条件判断、用户输入解析。
10 猜数字游戏 (Guess the Number) 电脑随机想一个数,让玩家来猜,并给出“大了”或“小了”的提示。
技能点: 随机数、循环、条件判断。

二、 文本与文件处理 (Text & File Processing)

学习如何与文本和文件进行交互是编程的必备技能。

# 项目名称 简介与核心技能
11 单词计数器 (Word Counter) 读取一个 .txt 文件,统计其中包含多少个单词。
技能点: 文件读取、字符串分割。
12 回文检查器 (Palindrome Checker) 检查用户输入的单词或短语是否是回文(正读反读都一样)。
技能点: 字符串切片/反转、条件判断。
13 Mad Libs 故事生成器 提示用户输入名词、动词、形容词,然后将它们填入一个预设的故事模板中。
技能点: 字符串格式化、用户输入、列表。
14 简易日记本 (Simple Journal) 允许用户写入一句话,程序会自动加上时间戳并追加到 journal.txt 文件中。
技能点: 文件追加写入、时间库。
15 行号添加器 (Line Number Adder) 读取一个文件,然后将带有行号的内容写入一个新文件。
技能点: 文件读写、循环、字符串拼接。
16 CSV 读取器 (Simple CSV Reader) 读取一个简单的CSV文件,并将其中的数据打印成格式化的表格。
技能点: 文件读取、字符串分割、循环。
17 文本反转器 (File Reverser) 读取一个文件,将其中的每一行内容反转后,写入新文件。
技能点: 文件读写、字符串操作。
18 查找文件中的特定单词 提示用户输入一个单词,然后在指定文件中查找该单词出现的次数。
技能点: 文件读取、循环、条件判断。
19 批量创建文件夹 根据一个列表中的名字,在当前目录下创建多个文件夹。
技能点: 文件系统操作、循环。
20 字母计数器 (Letter Counter) 统计一段文本中每个字母(a-z)出现的频率。
技能点: 字典(哈希表)、循环、字符串方法。

三、 数学与逻辑趣题 (Math & Logic Puzzles)

这些是经典的编程入门练习,能有效锻炼逻辑思维。

# 项目名称 简介与核心技能
21 FizzBuzz 打印1到100的数字,但3的倍数打印"Fizz",5的倍数打印"Buzz",15的倍数打印"FizzBuzz"。
技能点: 循环、模运算 %、条件判断。
22 斐波那契数列 (Fibonacci Sequence) 生成斐波那契数列的前 N 个数。
技能点: 循环、变量赋值。
23 阶乘计算器 (Factorial Calculator) 计算一个给定数字的阶乘 (n!)。
技能点: 循环或递归。
24 素数检查器 (Prime Number Checker) 检查一个数是否为素数。
技能点: 循环、数学逻辑。
25 找列表中的最大/最小值 不使用内置函数,找到一个数字列表中的最大值和最小值。
技能点: 循环、条件判断。
26 闰年检查器 (Leap Year Checker) 判断一个给定的年份是否是闰年。
技能点: 条件判断、模运算。
27 数字各位之和 (Sum of Digits) 计算一个整数所有位数上的数字之和(如 123 -> 6)。
技能点: 循环、模运算、整除。
28 Collatz 猜想 从任意正整数开始,如果是奇数则乘以3加1,如果是偶数则除以2,最终都会得到1。
技能点: 循环、条件判断。
29 绘制金字塔 (Draw a Pyramid) 在控制台用 * 或其他字符打印出一个金字塔形状。
技能点: 嵌套循环、字符串操作。
30 简单利息计算器 (Simple Interest Calculator) 根据本金、利率和时间计算单利。
技能点: 数学运算、函数。

四、 简单游戏与模拟 (Simple Games & Simulations)

# 项目名称 简介与核心技能
31 猜谜游戏 (Simple Quiz) 提出几个预设的问题,并判断用户的答案是否正确,最后给出分数。
技能点: 列表/字典、循环、条件判断。
32 刽子手游戏 (Hangman) 经典的猜单词游戏,猜错有次数限制。
技能点: 字符串操作、列表、循环、用户输入。
33 文字冒险游戏 (2-Room Dungeon) 一个极简的文字冒险,只有两个房间,玩家可以输入 go north/south 来移动。
技能点: 循环、条件判断、状态变量。
34 记忆配对游戏 (CLI Memory Game) 在控制台显示一个字符网格,短暂显示后隐藏,让玩家输入坐标来匹配相同的字符。
技能点: 二维数组、定时器、用户输入。
35 高低牌游戏 (Higher or Lower) 抽一张牌,让玩家猜下一张牌比当前牌大还是小。
技能点: 随机数、数据结构(表示扑克牌)、条件判断。
36 简易老虎机 (Simple Slot Machine) 模拟一个三卷轴的老虎机,看是否能摇出中奖组合。
技能点: 随机数、列表、条件判断。
37 生命游戏(单步) 创建一个 Game of Life 的初始状态,并只计算出它的下一个状态。
技能点: 二维数组、嵌套循环。
38 井字棋(仅判断胜负) 给定一个已完成的井字棋棋盘(二维数组),编写一个函数判断哪一方获胜。
技能点: 二维数组、条件判断、函数。
39 文本宠物 (Text-based Pet) 一个简单的虚拟宠物,你可以给它喂食,它的饥饿值会随时间增加。
技能点: 对象/字典、循环、状态管理。
40 寻宝游戏 (CLI Treasure Hunt) 在一个 5x5 的网格中藏一个宝藏,让玩家输入坐标来寻找。
技能点: 二维数组、循环、用户输入。

五、 简单API与Web交互 (Simple API & Web Interaction)

# 项目名称 简介与核心技能
41 随机笑话生成器 调用一个免费的笑话API,获取并打印一个随机的英文笑话。
技能点: HTTP请求库、API调用、JSON解析。
42 获取当前比特币价格 调用 CoinDesk 或类似 API,获取并显示比特币的当前价格。
技能点: API调用、JSON解析。
43 随机猫/狗图片链接 调用一个随机宠物图片的API,获取图片的URL并打印出来。
技能点: API调用、JSON解析。
44 IP地址查询 调用一个 "What is my IP" 的API,获取并显示你自己的公网IP地址。<br技能点>: API调用、JSON解析。
45 生成二维码 使用一个简单的库,将用户输入的文本或URL转换成一个二维码图片并保存。
技能点: 第三方库的使用、函数调用。
46 检查网站是否在线 输入一个网址,程序发送一个请求,并根据返回的状态码判断网站是否可访问。
技能点: HTTP请求库、错误处理。
47 获取今日名言 调用一个名言API,获取并显示每日名言。
技能点: API调用、JSON解析。
48 生成静态HTML页面 编写一个程序,将一些文本内容生成一个简单的 index.html 文件。
技能点: 文件写入、字符串格式化。
49 查询GitHub用户信息 输入一个GitHub用户名,调用GitHub API获取该用户的公开信息(如名字、粉丝数)。
技能点: API调用、JSON解析。
50 查询邮政编码信息 调用一个邮政编码查询API,输入邮政编码返回对应的地区信息。
技能点: API调用、JSON解析。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容