三年级同学的Python小课堂
嗨,小朋友!欢迎来到Python小课堂!我是你的电脑老师,会一步一步教你写代码。
这本"书"一共有7个小故事,每个故事都跟你的生活有关。
你已经会 print() 啦,那我们就开始新的冒险吧!
🗺️ 我们要去哪里?
学Python就像爬楼梯,每一层都站得更稳。我们从最简单的"小盒子"开始,慢慢学会让电脑帮我们做事情。
🔧 上课前要准备什么?
电脑老师有2个选择,挑一个就行:
- 装个Python:让爸爸妈妈帮你去 python.org 下载,记得勾选"Add Python to PATH"。
- 用网页版:直接打开 trinket.io,不用装任何东西,打开网页就能写代码!
📦 第1个故事 变量 - 装东西的小盒子
🌟 这个故事讲什么?
小朋友们,你们有没有小盒子?把玩具放进去,盖上盖子,写个名字。要玩的时候叫名字就能找到。
Python里的"变量"就像小盒子!我们可以把数字、名字放进盒子里,以后要用了,叫它一声就行。
🎓 怎么用呢?
做一个变量很简单,就像给它起个名字,再把东西放进去:
# 做一个叫 name 的小盒子,把"小明"放进去
name = "小明"
# 做一个叫 age 的小盒子,把数字 10 放进去
age = 10
# 把盒子里的东西拿出来看看
print(name) # 电脑会说:小明
print(age) # 电脑会说:10
📏 起名字有规则哦
- 只能用字母、数字、下划线(_),不能有空格
- 不能以数字开头(比如
2name不行哦) - 要分得清大小写:
Name和name是两个不同的盒子 - 最好起有意义的名字,比如
my_name比a好懂
NameError。就像你喊"小白",但你家的狗叫"小黑",它不会理你!
- 做一个叫
my_name的小盒子,把你的名字放进去,再用print()让电脑说出来。 - 做一个叫
lucky_number的小盒子,把你最喜欢的数字放进去,让电脑说出来。 - 猜一猜下面这段代码,电脑会说什么?
x = 5 y = x + 3 x = 10 print(y)
第1题:
my_name = "小红" # 换成你自己的名字
print(my_name)
第2题:
lucky_number = 7 # 换成你喜欢的数字
print("我喜欢的数字是:", lucky_number)
第3题:电脑会说 8。
解析:先把5放进 x,然后 y = x + 3 就是 5+3=8。
之后 x 变成了10,但 y 已经是8了,不会再变哦!
💬 第2个故事 输入 - 和电脑说话
🌟 这个故事讲什么?
前面我们都是让电脑说话(用 print())。这一章我们让电脑听我们说话!
🎓 怎么用呢?
用 input() 可以让电脑停下来,等你从键盘上打字:
# 让电脑问你叫什么
name = input("你叫什么名字?")
print("你好,", name, "!欢迎来玩Python!")
运行后,屏幕会出现"你叫什么名字?",你输入"小明"按回车,电脑就会说"你好,小明!欢迎来玩Python!"
⚠️ 重要的事情说三遍!
不管你输入什么,input() 都当成"文字"。如果你想算数学题,就要用 int() 把它变成数字。
# 这样会出错哦!
age = input("你今年几岁?")
next_year = age + 1 # 报错!文字不能加数字
# 这样才对:用 int() 把文字变成数字
age = int(input("你今年几岁?"))
next_year = age + 1
print("明年你就", next_year, "岁了!")
int() 把"文字"变成"整数",str() 把"数字"变成"文字"。它们就像变形金刚!
- 让电脑问你"你最喜欢什么水果?",然后说"哇!你也喜欢 [水果] 吗?我也喜欢!"
- 让电脑问你两个数字,然后告诉你是它们的和是多少。
- 让电脑问你的名字和年龄,然后说"你好 [名字],明年你就 [年龄+1] 岁了!"。
第1题:
fruit = input("你最喜欢什么水果?")
print("哇!你也喜欢", fruit, "吗?我也喜欢!")
第2题:
a = int(input("说一个数字:"))
b = int(input("再说一个数字:"))
print("两个加起来是:", a + b)
第3题:
name = input("你叫什么名字?")
age = int(input("你今年几岁?"))
print("你好", name, ",明年你就", age + 1, "岁了!")
🔢 第3个故事 不同的"东西"
🌟 这个故事讲什么?
世界上有不同种类的东西:水果、玩具、书本。Python里也有不同的东西,我们叫它们"数据类型"。最常见的有4种:
- 整数:比如 1, 100, -5 (就是没有小数点的数字)
- 小数:比如 3.14, 0.5 (有小数点的)
- 文字:比如 "你好", "苹果" (要用引号包起来)
- 真假:只有两个——
True(真)和False(假)
🎓 怎么用呢?
# 整数(你的分数)
score = 95
# 小数(你的身高,单位是米)
height = 1.4
# 文字(你的名字)
my_name = "小红"
# 真假(你是不是小学生?)
is_pupil = True
🧮 数学计算
Python会做数学题!就像你用计算器一样:
print(10 + 3) # 加法:13
print(10 - 3) # 减法:7
print(10 * 3) # 乘法:30(乘号是星号)
print(10 / 3) # 除法:3.333...
print(10 // 3) # 整除:3(不要小数)
print(10 % 3) # 余数:1(除完还剩多少)
print(2 ** 3) # 乘方:8(2×2×2)
✍️ 文字也能玩
first = "你好"
second = "世界"
print(first + second) # 拼起来:你好世界
print(first * 3) # 重复3次:你好你好你好
type() 问电脑。比如 print(type(95)) 会告诉你这是"整数"。
- 做三个小盒子:一个装整数、一个装小数、一个装你的名字。让电脑告诉你它们分别是什么类型。
- 计算一下:你有 20颗糖,分给 3个朋友,平均每人能分几颗?还剩几颗?写出代码。
- 把你的姓和名拼在一起,中间加个空格。
- 猜一猜:
print("2" + "3")会说什么?print(2 + 3)又会说什么?
第1题:
a = 10
b = 1.4
c = "小红"
print(type(a)) # int(整数)
print(type(b)) # float(小数)
print(type(c)) # str(文字)
第2题:
print("每人能分:", 20 // 3, "颗") # 6颗
print("还剩:", 20 % 3, "颗") # 2颗
第3题:
last_name = "小"
first_name = "红"
print(last_name + " " + first_name) # 小 红
第4题:
print("2" + "3") 说 23(两个文字拼起来)
print(2 + 3) 说 5(两个数字加起来)
🚦 第4个故事 让电脑做选择
🌟 这个故事讲什么?
每天早上妈妈都要看天气:下雨就带伞,晴天就不带。电脑也能这样选!
🎓 怎么用呢?
我们让电脑根据年龄说不同的话:
age = int(input("你今年几岁?"))
if age >= 18:
print("你是大人了!")
elif age >= 12:
print("你是大孩子了!")
elif age >= 0:
print("你还是小朋友!")
else:
print("这孩子还没出生哟~👶")
注意哦:判断要从大到小写,先看是不是 ≥18,再看是不是 ≥12,最后再看是不是 ≥0。
-5,原来的代码会说"你是小朋友",但其实负数年龄不合理!上面这版已经修好了:再加一个 elif age >= 0 来判断"是有效的小朋友年龄",剩下的 else 才是"还没出生"。写程序要考虑所有可能哦!
📊 比较符号
| 符号 | 意思 | 例子 |
|---|---|---|
== | 等于 | 5 == 5 → 对 |
!= | 不等于 | 5 != 3 → 对 |
> | 大于 | 5 > 3 → 对 |
< | 小于 | 5 < 10 → 对 |
>= | 大于等于 | 5 >= 5 → 对 |
<= | 小于等于 | 5 <= 5 → 对 |
🔗 组合条件
有时候要两个条件都对,就像你要"晴天而且温度高才出去玩":
# and: 两个条件都要对
if age >= 6 and age <= 12:
print("你在上小学!")
# or: 有一个对就行(可以免票看电影)
if age < 6 or age > 60:
print("你可以免票!")
- 让电脑问你的考试分数,如果 ≥ 60 就说"及格啦!",否则说"不及格,继续加油!"
- 让电脑问你一个数字,然后说它是"正数"(大于0)、"零"、还是"负数"(小于0)。
- 挑战题:改一改上面的"年龄判断"代码,让它更聪明:如果年龄大于150就说"哇!你是不是成仙了?🧙"
第1题:
score = int(input("你考了多少分?"))
if score >= 60:
print("及格啦!🎉")
else:
print("不及格,继续加油!💪")
第2题:
num = int(input("说一个数字:"))
if num > 0:
print("这是一个正数")
elif num < 0:
print("这是一个负数")
else:
print("这是零")
第3题(挑战):
age = int(input("你今年几岁?"))
if age < 0:
print("这孩子还没出生哟~👶")
elif age > 150:
print("哇!你是不是成仙了?🧙")
elif age >= 18:
print("你是大人了!")
elif age >= 12:
print("你是大孩子了!")
else:
print("你还是小朋友!")
💡 小哲学:好的程序不只是能跑,还要考虑"用户可能会输入什么奇怪的东西"。这种思维叫想得周到!
🔄 第5个故事 让电脑做重复的事
🌟 这个故事讲什么?
如果让你写"我爱学习" 100遍,你肯定会累死。但用"循环",电脑1秒钟就能写完!
🎓 for 循环(数数)
for 循环就是"一个一个做",最常用的是用 range() 来告诉电脑"做几次":
# 打印 5 遍"我爱学习"
for i in range(5):
print("我爱学习")
# 从 1 数到 5
for i in range(1, 6): # 注意是到 6(不包含 6)
print(i)
🎓 while 循环(一直做到对为止)
while 就是"只要条件对,就一直做":
# 从 1 数到 5
i = 1
while i <= 5:
print(i)
i = i + 1 # 很重要!别忘了往前走
🛑 循环控制
有时候你刷碗刷到一半发现没碗了,就可以停下来:
# break:立刻停下来
for i in range(1, 11):
if i == 6:
break # 到 6 就停
print(i) # 输出:1 2 3 4 5
# continue:跳过这次
for i in range(1, 6):
if i == 3:
continue # 跳过 3
print(i) # 输出:1 2 4 5
while 的条件永远都对(比如忘了让 i 增加),电脑就会一直跑。这时按 Ctrl+C 强制停下来。
- 让电脑帮你算:1+2+3+...+100 是多少?
- 让电脑问你"密码是什么?",如果答错了就一直问(假设正确密码是
python123)。 - 小挑战:让电脑从1数到10,但不数 7(用 continue)。
第1题:
total = 0
for i in range(1, 101):
total = total + i
print("1加到100是:", total) # 5050
第2题:
password = ""
while password != "python123":
password = input("密码是什么?")
print("密码正确,欢迎!")
第3题:
for i in range(1, 11):
if i == 7:
continue # 跳过 7
print(i)
📚 第6个故事 一排排的小盒子
🌟 这个故事讲什么?
如果变量是一个小盒子,那列表就是一排小盒子,每个盒子都有自己的编号。比如存储全班同学的名字。
🎓 怎么用呢?
# 做一个有4种水果的列表
fruits = ["苹果", "香蕉", "橙子", "葡萄"]
# 通过编号(叫"索引")拿出来,编号从 0 开始!
print(fruits[0]) # 苹果
print(fruits[1]) # 香蕉
print(fruits[-1]) # 葡萄(最后一个)
# 还可以换里面的东西
fruits[0] = "草莓"
print(fruits) # ['草莓', '香蕉', '橙子', '葡萄']
🛠️ 列表的常用操作
scores = [85, 92, 78, 95, 88]
print(len(scores)) # 一共有几个:5
print(max(scores)) # 最大:95
print(min(scores)) # 最小:78
print(sum(scores)) # 加起来:438
scores.append(90) # 在最后加一个 90
scores.remove(78) # 把 78 拿掉
🔁 一个个拿出来看
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
print("我喜欢吃", fruit)
[0],第二个是 [1]。一开始会不习惯,多写几遍就好了!
- 做一个列表,装你最喜欢的5种水果,然后让电脑说出第3个。
- 做一个程序:让电脑问你5次"你考试得了多少分?",最后告诉你平均分。
- 小挑战:把列表
[3, 1, 4, 1, 5, 9, 2, 6]排好序(从大到小)。
第1题:
fruits = ["草莓", "香蕉", "橙子", "葡萄", "苹果"]
print("第3个水果是:", fruits[2]) # 橙子
第2题:
scores = []
for i in range(5):
n = int(input(f"第{i+1}次考试多少分?"))
scores.append(n)
print("平均分是:", sum(scores) / len(scores))
第3题:
nums = [3, 1, 4, 1, 5, 9, 2, 6]
nums.sort() # 从小到大
nums.sort(reverse=True) # 从大到小
print(nums) # [9, 6, 5, 4, 3, 2, 1, 1]
✨ 第7个故事 我自己的小魔法
🌟 这个故事讲什么?
当一段代码你要用很多次,就可以把它打包起来,起个名字。以后叫它的名字就能用。这个"打包"的东西就叫函数!
🎓 怎么用呢?
# 定义一个打招呼的魔法
def say_hello(name):
print("你好,", name, "!")
# 使用魔法(叫它的名字)
say_hello("小明")
say_hello("小红")
📦 让魔法"返回"一个结果
# 这个魔法能算两个数的和
def add(a, b):
return a + b
result = add(3, 5)
print(result) # 8
🌟 更多好玩的
# 默认的问候(如果不特别说,就是"你好")
def greet(name, hi="你好"):
print(hi, name)
greet("小明") # 你好 小明
greet("小明", "Hi") # Hi 小明
① 不用重复写
② 改起来很方便
③ 别人一看名字就知道是干什么的
- 做一个魔法叫
double(n),它能返回一个数字"翻倍"的结果。比如double(5)应该返回 10。 - 做一个魔法叫
say_hi(name),让它说"你好,name!今天开心吗?"。 - 小挑战:做一个魔法叫
max_of_three(a, b, c),返回三个数中最大的那个。
第1题:
def double(n):
return n * 2
print(double(5)) # 10
第2题:
def say_hi(name):
print("你好,", name, "!今天开心吗?😊")
say_hi("小明")
第3题:
def max_of_three(a, b, c):
if a > b and a > c:
return a
elif b > c:
return b
else:
return c
print(max_of_three(3, 7, 5)) # 7
🎉 太棒了!你学完啦!
你已经学会了Python最重要的7个本领!我们回顾一下:
| 故事 | 学到的 | 小成就 |
|---|---|---|
| 第1个 | 变量 | 🏆 会做小盒子了 |
| 第2个 | 输入 | 🏆 能和电脑说话了 |
| 第3个 | 不同的"东西" | 🏆 会做数学了 |
| 第4个 | 让电脑做选择 | 🏆 电脑会想问题了 |
| 第5个 | 循环 | 🏆 让电脑做重复的事 |
| 第6个 | 列表 | 🏆 能装一大堆东西了 |
| 第7个 | 函数 | 🏆 创造自己的魔法了 |
🚀 接下来玩什么呢?
- 画图:用 turtle 画一只小猫🐱
- 做小游戏:用 pygame 做一个小游戏🎮
- 记单词:做一个背单词的小帮手📚
① 多写代码——写得越多越厉害
② 不怕报错——错误是最好的老师
③ 做小项目——比如做一个计算器
④ 告诉小伙伴——讲给别人听,自己也记得更牢
🌈 加油,小魔法师!
编程就像学魔法,一开始可能会有点难,但只要多练习,你一定能变出很酷的东西!有问题随时来找电脑老师哦~