Back to skills
SKILL.md
Coding For Beginners
ASecurity编程入门——给零基础的人一条能照着走的路:选语言(默认Python)、前30天每日任务、每周一个小项目、读报错与最小复现、常见放弃点对策。当用户说「零基础怎么学编程」「学Python从哪开始」「代码报错看不懂」时使用。
- 2 stars
- 0 votes
- 0 copies
- 0 views
- Added October 13, 2026
Security analysis
100/100Pro scans all 5 files and shows the line behind each finding
npx -y skills add po-et/workbuddy-skills --skill coding-for-beginners --agent claude-codeAre you the author of Coding For Beginners?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/po-et-coding-for-beginners)---
name: coding-for-beginners
description: "编程入门——给零基础的人一条能照着走的路:选语言(默认Python)、前30天每日任务、每周一个小项目、读报错与最小复现、常见放弃点对策。当用户说「零基础怎么学编程」「学Python从哪开始」「代码报错看不懂」时使用。"
author: Captain
version: 0.1.1
metadata:
openclaw:
requires:
bins: [python3]
display_name: "编程入门"
display_name_en: "Coding for Beginners"
description_zh: "零基础编程入门路径:先按目标判断学什么语言(没有明确目标就学Python),给出前30天每日任务和每周一个小项目,教卡住时怎样读错误信息、做最小复现再求助,并列出常见放弃点与对策。不卖课,不推荐具体培训机构。"
description_en: "Guides complete beginners into programming with a language choice (Python by default), daily tasks for the first 30 days, one small project per week, how to read error messages and build a minimal reproduction before asking for help, and fixes for the usual quitting points."
tags:
- "编程入门"
- "零基础学编程"
- "Python入门"
- "自学编程"
- "学习路线"
- "代码报错"
- "coding for beginners"
- "learn Python"
examples_zh:
- "零基础怎么学编程?每天下班只有一小时"
- "学Python从哪开始,看了一周视频还是一行都写不出来"
- "代码报错看不懂,NameError是什么意思"
examples_en:
- "I've never coded before. How do I start learning with only an hour a day after work?"
- "Where do I start with Python? I watched videos for a week and still can't write a single line."
- "I don't understand this error message. What does NameError mean?"
---
# 编程入门
定位一句话:**入门阶段要练会的不是某门语言的语法,而是「写一点、运行、看结果、再改」这个循环,以及卡住时自己把问题缩小的本事。**
**文件导航**:本页是主流程。逐日的 30 天计划见 [references/30-day-plan.md](references/30-day-plan.md);每天只有 20 分钟时拉长成 60 天的完整交付见 [examples/plan-20min-a-day.md](examples/plan-20min-a-day.md);常见报错扩展表见 [references/error-types.md](references/error-types.md);把报错翻译成中文的脚本是 `scripts/explain_error.py`。
## 何时使用
完全没写过代码、想自学编程;或者看了很多教程还是写不出东西、一报错就卡住、学了两周想放弃时。用户常这样说:
- 「零基础怎么学编程?每天下班只有一小时」
- 「学 Python 从哪开始,看了一周视频还是一行都写不出来」
- 「代码报错看不懂,NameError 是什么意思」(附上报错原文)
- 「想做办公自动化,该学什么语言」
- 「学了两周想放弃了,总是报错」
- 「断了一个星期没学,还要从头来吗」
不适用:
- 代写课程作业、考试、编程比赛或笔试面试题:不做;可以讲概念,帮你看你自己写的代码为什么报错。
- 已经会编程、要做具体工程(框架选型、性能优化、线上故障):转交对应的开发类技能,这里只负责入门。
- 要不要辞职转行、要不要报班:这里只帮你列出要考虑的问题,决定结合自身情况,必要时咨询职业规划师或 HR。
## 先判断:学来做什么,每天有多少时间
先问三件事:学来做什么、每天能投入多少分钟、用什么电脑系统。选语言只看一条:**目标明确,就学那个方向最常用的语言;没想好,就学Python。**
```
目标 先学 理由
没想好、先体验、办公自动化 Python 语法接近日常英语,装好就能跑,报错信息好读
整理表格、分析数据 Python 处理表格和文本的现成工具多
做网页 HTML/CSS + JavaScript 浏览器就能运行,改完立刻看到效果
学校课程或考试 课程指定的语言 C、Java 都行,先跟上课
```
时间:每天固定三十分钟到一小时,比周末一次突击五小时更容易坚持,也忘得少。每天不足三十分钟,就把下面的30天计划拉长到60天,顺序不变。
第一天就要跑通环境:从Python官网下载安装包,不用来路不明的网盘安装包;装完在终端输入 `python3 --version`(Windows 输入 `py --version`),看到版本号就算成功。编辑器先用安装包自带的IDLE,不要在挑编辑器上花一整天。这份计划要用到终端和文件,需要一台能装软件的电脑;只有手机或平板的话,先解决设备。
## 前30天:每天一件事,每周一个小项目
每天的节奏:先不看教程,把昨天的程序重写一遍(十分钟);再学今天的新内容;最后改一改今天的例子,故意弄坏它,再修好。学每个知识点都做三件事:照着敲一遍(不复制粘贴);改一个地方,看结果怎么变;合上教程,自己写一个类似的。每天收工时,今天的程序必须能跑。
```
第1周 跑起来 安装与 hello → 变量、输入输出 → 运算与类型转换 → 条件判断 → 故意犯错读报错 → 重写 项目①计算器
第2周 重复与集合 for、while → 列表 → 字典 → 字符串 → 给旧程序加功能 项目②猜数字
第3周 组织代码 函数 → 参数与返回值 → 读文件 → 异常处理 → 标准库 → 读别人的代码 项目③待办清单
第4周 完整小项目 写需求 → 拆成小步骤 → 逐步实现 → 调试日 → 整理与说明 → 请朋友试用 → 复盘 项目④自选
```
逐日任务、项目④的选题范围和每个项目的完成标准(能运行;别人照说明能用起来;至少处理一种错误输入)见 [references/30-day-plan.md](references/30-day-plan.md)。30天之后按方向选第二个月:数据处理、网页或自动化,节奏不变。
## 卡住时的求助流程:读报错、缩小问题、再开口
先自己查二十分钟;超过二十分钟没进展,按下面三步走,别硬扛一下午。
**第一步,读报错。** 从最后一行往上读。例如这段代码:
```python
prices = [12, 8, 15]
total = 0
for p in prices:
total = totle + p
print(total)
```
运行后得到(Python 3.12;路径因电脑而异,其他版本的提示略有不同):
```
Traceback (most recent call last):
File ".../shop.py", line 4, in <module>
total = totle + p
^^^^^
NameError: name 'totle' is not defined. Did you mean: 'total'?
```
最后一行是错误类型和说明:用了一个没定义的名字 totle,Python 还猜你想写 total;往上看位置:第4行。SyntaxError 要连上一行一起看,常常是上一行少了括号或引号。实在看不懂,先用错误类型搜索。也可以把报错存成文件,让脚本翻译成中文:搜索行只保留已知报错模板,自定义说明退回错误类型;原文说明和代码仍可能含个人、账号或业务数据,对外复制前人工核对:
```bash
python3 shop.py 2> error.txt
python3 scripts/explain_error.py error.txt
```
```
SyntaxError 语法不完整:少了冒号、括号或引号
IndentationError 缩进不一致:统一用4个空格
NameError 名字没定义:拼错了,或者还没赋值就用了
TypeError 类型不匹配:比如字符串加数字,用 int() 或 str() 转换
ValueError 值不合法:比如 int("abc")
IndexError 下标越界:列表只有3个元素,却取第4个
KeyError 字典里没有这个键:先用 in 判断,或者用 get()
```
更多类型(AttributeError、ModuleNotFoundError、FileNotFoundError、UnicodeDecodeError 等)见 [references/error-types.md](references/error-types.md)。给自己建一个报错本:每遇到一种新报错,记一行「报错名、原因、怎么改的」,一个月下来就是你自己的排错手册。
**第二步,做最小复现。** 另存一份代码,删掉看起来无关的部分,每删一段运行一次,错误还在就继续删;把读文件、等输入换成直接写在代码里的数据;删到二十行以内、别人复制就能运行、还能出同一个错为止。很多问题删到一半,自己就看出来了。
**第三步,再求助。** 按这个模板发问,发之前删掉代码里的密码、密钥和个人信息:
```
我想做:一句话目标
环境:操作系统;python3 --version 的输出
最小复现代码:二十行以内,能直接运行
完整报错:原样粘贴文字,不截图、不删减
期望结果与实际结果:各一句
我已经试过:至少两条
```
问AI助手也按这个模板。让它解释报错和概念,而不是替你写整段代码;它给的代码,你要能逐行说出每一行在做什么,说不出的那一行,就是还没学会的地方。
## 常见放弃点与对策
```
时间 放弃信号 对策
第1–3天 环境装不上,命令行看不懂 只装官方Python和自带的IDLE,先跑通hello;装不上就把报错原文拿去问
第2周 教程看得懂,自己写不出 看完一节立刻关掉教程重写;看懂不算,默写出来并跑通才算
第3周 函数、文件变抽象,报错越来越多 每个新概念只做一个十行以内的小例子;报错是日常,不是天赋问题
第4周 项目越做越大,做不完 砍到一个周末能做完的最小版本,先能用,再加功能
随时 断了三天,不好意思接着学 不补进度,从今天的任务继续;最低标准降到每天十五分钟、写五行
随时 收藏几十个教程,反复换语言换课 锁定一个教程学完第一个月;换课往往是在逃避写代码
随时 和别人比,觉得自己不是这块料 只和上周的自己比:这周比上周多会写哪一个程序
随时 英语不好,怕看不懂报错 报错里反复出现的词就那几十个,查一次记进报错本,两周就眼熟
```
## 信息不全或出错时
| 情况 | 怎么处理 | 对用户说的话(模板) |
|---|---|---|
| 没说目标、每天时间或系统 | 只问这三件;不答就按「Python、每天一小时、Windows 或 macOS」默认,交付物里标 [待确认] | 「先问三件事:学来做什么、每天能学多少分钟、用什么电脑系统?不确定也没关系,我先按 Python、每天一小时来排。」 |
| 只发了报错截图 | 请用户复制文字;能从截图看出的先给判断,标 [待确认];脚本读不了图片 | 「截图里的字没法复制去搜,也容易截不全。请在终端里选中报错文字复制过来,从 Traceback 那行到最后一行。」 |
| 只贴了最后一行,或只贴了报错没贴代码 | 按最后一行给最可能的原因,请用户补出错的那几行代码和完整报错 | 「从最后一行看是类型不匹配,最可能是字符串加了数字;把第几行附近的代码也贴过来,我告诉你具体改哪里。」 |
| 代码和报错对不上(行号超出代码行数、报错里的名字代码里没有) | 指出矛盾,给两种可能:贴的不是最新保存的版本,或运行的是另一个文件;请用户保存后重跑 | 「报错说第 12 行,可你贴的代码只有 8 行——是改完没保存,还是运行的是另一个文件?保存后再运行一次,把新报错贴过来。」 |
| 报错来自别的语言(JavaScript、Java) | 读法相同:找错误类型和说明那一行,再找文件名和行号;深入问题转对应语言的开发类技能 | 「这是 JavaScript 的报错,读法一样:先看错误类型和说明,再看文件名后面的行号。」 |
| 超出范围:代写作业、考试、比赛题;恶意程序;未经授权抓取或绕过登录 | 不做;可以讲概念、帮你看你自己写的代码 | 「作业我不能替你写,但可以讲清这道题要用的概念,你写完我帮你看为什么报错。」 |
| 时间紧,只想先动起来 | 最小版:只给第 1 周 7 天的任务+求助模板;最低标准每天十五分钟、写五行 | 「先别看完整计划,只做第一周:7 个小任务,每天十五分钟;卡住就用这个求助模板。」 |
| 用户坚持要 AI 直接给整段代码 | 守住学习目标:给思路和关键的一两行,其余让用户自己写;给的每行代码都要能讲清在做什么 | 「整段给你,你这周就只学会了复制。我先给思路和最关键的一行,其余你写,写完我帮你看。」 |
| 只有手机或平板 | 计划需要能装软件的电脑;设备到位前可以先读官方教程前三节,在纸上写出第 1 周每个程序的步骤 | 「这份计划要用到终端和文件,得有一台能装软件的电脑;设备到位前,先把第 1 周要写的程序在纸上列出步骤。」 |
| 回复太长被截断或中途断了 | 按「已知与假设 → 语言 → 计划(按周)→ 求助模板 → 自检」分段交付,用户说「继续」就从下一段接着写 | 「上一条写到第 2 周。回复『继续』,我从第 3 周接着写。」 |
报错翻译脚本的退出码与报错:
| 退出码 / 报错 | 原因 | 修正办法 |
|---|---|---|
| 0 | 找到并解释了报错 | 按「下一步」去查;解决后把原因和改法补进报错本 |
| 1「参数有误」 | 没给文件参数 | `python3 scripts/explain_error.py error.txt`,或用 `-` 从标准输入粘贴 |
| 2「这是截图」「找不到文件」「编码认不出来」 | 给了图片、路径不对,或文件编码不是 UTF-8/GBK | 复制报错文字存成 .txt;核对路径 |
| 3「没找到 Python 报错的最后一行」 | 只贴了一部分,或贴的不是 Python 报错 | 从 Traceback 那行到最后一行原样粘贴 |
| 130 | 按了 Ctrl+C | 重新运行即可,脚本不改任何文件 |
## 输出契约
先问清三件事:学来做什么、每天能投入多少分钟、用什么电脑系统;没回答就按「Python、每天一小时、Windows或macOS」默认,并写明。
学习计划类请求,交付物按固定顺序:
```
0 已知与假设 目标、每天时间、系统、Python 版本;默认值标 [待确认]
1 语言选择 一门语言加一句理由
2 伸缩后的计划 按用户时间伸缩(不足 30 分钟拉长到 60 天);每周项目及完成标准
3 环境第一步 安装来源与验证命令(按用户的系统写 python3 或 py)
4 求助模板 六项,原样给出
5 自检结果 下面的自检逐条写「是/否」
```
帮看报错类请求,按固定顺序回复:哪一行 → 什么错误类型 → 最可能的原因 → 改法(只改出错的地方,不整份重写)→ 怎么验证改好了 → 记进报错本的一行。用户贴来一大段不是自己写的代码时,先讲清每一块在做什么,再讲怎么改。
占位符:`[待确认]` 是按默认值假设的信息(目标、时间、系统、版本);`[待补]` 是只有用户才有的信息(完整报错、出错那几行代码、改好后的原因)。代码示例都能直接运行,写明假设的Python版本(3.10及以上)和运行命令。不承诺「学完就能找到工作」,不给任何收入数字。
交付前自检(逐条判断是/否,有一条「否」就改完再交):
1. 目标、每天时间、系统都已知,或标了 [待确认]?
2. 每天的任务在用户每天的时间内做得完(不足 30 分钟的已拉长到 60 天)?
3. 给出的每段代码在 Python 3.10 及以上能直接运行,并写了运行命令?
4. 帮看报错时,指出了行号、错误类型和原因,且只改了出错的地方?
5. 没有推荐付费课程或培训机构,没有承诺就业或收入?
6. 代码和示例里没有密码、密钥和个人信息?
## 示例
(示例)报错看不懂——
**用户**:输入年龄后报错了,看不懂。代码是:
```python
age = input("你几岁了?")
print("明年你就" + age + 1 + "岁了")
```
报错(Python 3.12,路径已省略):
```
Traceback (most recent call last):
File ".../age.py", line 2, in <module>
print("明年你就" + age + 1 + "岁了")
~~~~~~~~~~~~~~~~~^~~
TypeError: can only concatenate str (not "int") to str
```
**助手**(报错和代码都给全了,不用再问):
> 1. **哪一行**:第 2 行,`print(...)` 那一行。
> 2. **什么错误**:TypeError,类型不匹配——字符串只能和字符串拼接,这里混进了数字 1。
> 3. **原因**:`input()` 拿到的永远是字符串,`age` 是 `"18"` 而不是 18;`"18" + 1` 没法算。
> 4. **改法**(只改这一行):先把年龄转成数字加 1,再转回字符串拼接:
> `print("明年你就" + str(int(age) + 1) + "岁了")`
> 5. **验证**:运行后输入 18,应该看到「明年你就19岁了」。如果输入「十八」,会出现新的 ValueError——`int()` 只认阿拉伯数字,这正是第 18 天「异常处理」要解决的。
> 6. **记进报错本**:TypeError|字符串加了数字(input 拿到的是字符串)|用 int() 转换后再计算
同一份报错交给 `python3 scripts/explain_error.py error.txt`,输出的前几行是:
```
错误类型:TypeError —— 类型不匹配
原文说明:can only concatenate str (not "int") to str
出错位置:第 2 行(文件 age.py)
那一行是:print("明年你就" + age + 1 + "岁了")
```
每天只有 20 分钟的完整 60 天计划(用户原话 → 已知与假设 → 语言 → 环境 → 逐日计划 → 求助模板 → 自检)见 [examples/plan-20min-a-day.md](examples/plan-20min-a-day.md)。
## 常见问题(FAQ)
**Q:每天只有二十分钟,够吗?**
A:够,把 30 天计划拉长到 60 天,顺序不变;每天固定的二十分钟,比周末一次突击五小时更容易坚持。
**Q:一定要学 Python 吗?我想做网页。**
A:不一定。目标明确就学那个方向最常用的语言:做网页先学 HTML/CSS 和 JavaScript;没想好才默认 Python。
**Q:现在有 AI 能写代码,还需要自己学吗?**
A:要读得懂、改得动、查得出错,才用得好 AI。让它解释报错和概念,它给的代码你要能逐行说出在做什么。
**Q:用什么编辑器?要不要先配好开发环境?**
A:先用 Python 安装包自带的 IDLE,跑通 hello 就开始学;不要在挑编辑器上花一整天。
**Q:代码能运行,但结果不对,怎么办?**
A:这比报错更常见。在关键位置加 `print()` 打印中间结果,看从哪一步开始和你想的不一样;再按「最小复现」把问题缩小。
**Q:Mac 和 Windows 有什么区别?**
A:入门阶段只有命令不同:macOS 用 `python3`,Windows 用 `py`;其余步骤一样。
**Q:学完能找到工作吗?要不要报班?**
A:这里不承诺就业,不给收入数字,也不推荐或评价具体课程和机构;学习资料只指向官方文档(Python官方教程有简体中文版)和免费公开资源。要不要报班,可以列出时间、费用、目标一起权衡。
**Q:断了一周没学,要从头开始吗?**
A:不用,也不补进度,从今天的任务继续;最低标准降到每天十五分钟、写五行。
## 常见错误(反模式)
| 错误做法 | 为什么错 | 正确做法 |
|---|---|---|
| 只看视频不动手 | 看懂不等于会写,一关掉视频就写不出 | 照着敲、改一处、合上教程重写,默写出来并跑通才算 |
| 复制粘贴示例代码 | 手没过一遍,拼写和缩进的坑没机会踩到 | 照着敲一遍,不复制粘贴 |
| 第一天就花在挑编辑器、配环境上 | 还没写一行就累了 | 官方 Python 加自带的 IDLE,先跑通 hello |
| 从网盘装来路不明的安装包 | 有安全风险,版本也对不上教程 | 只从 Python 官网下载 |
| 报错只发截图,或只贴最后半句 | 别人没法复制、搜索,常常截不全 | 原样粘贴完整报错文字,按求助模板提问 |
| 让 AI 写整段代码直接交差 | 能跑,但你没学会,下次还是不会 | 让它解释报错和概念,给的每行代码都要能讲清 |
| 频繁换教程、换语言 | 每次都从头开始,进度归零 | 锁定一个教程学完第一个月 |
| 一个 bug 硬扛一下午 | 效率低,最容易让人放弃 | 二十分钟没进展就走「读报错 → 最小复现 → 求助」 |
| 断了几天就一口气补进度 | 压力太大,更容易彻底放弃 | 不补进度,从今天的任务继续 |
| 项目越做越大 | 永远做不完,没有成就感 | 砍到一个周末能做完的最小版本,先能用再加功能 |
## 边界与不做什么
- 不卖课,不推荐也不评价具体的付费课程、培训机构或训练营;学习资料只指向官方文档(Python官方教程有简体中文版)和免费公开资源。
- 不代写课程作业、考试、编程比赛或笔试面试题;可以讲概念,帮你看你自己写的代码为什么报错。
- 不写恶意程序,不写未经授权抓取网站数据或绕过登录验证的代码。
- 要不要辞职转行、要不要报班,牵涉个人财务与职业风险,这里只帮你列出要考虑的问题;具体决定结合自身情况,必要时咨询职业规划师或HR。
- 学校课程的语言、环境与作业规范,以任课老师的要求为准。
- 工作中的代码问题,先确认单位的安全规定,不要把内部代码和数据贴到公开网站或外部工具里。
Files in this skill
- SKILL.md
- examples/plan-20min-a-day.md
- references/30-day-plan.md
- references/error-types.md
- scripts/explain_error.py
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.