亲爱的家长朋友:
还记得我们学习C语言时,像学骑自行车一样,需要自己控制平衡、踩踏板、把握方向吗?
还记得我们学习C++时,像开手动挡汽车一样,需要挂挡、踩离合、控制油门吗?
现在,我们即将进入编程世界的另一个精彩领域——Python!
如果说C/C++是让我们理解计算机底层的"手动挡汽车",那么Python就是让创意快速实现的"自动挡跑车"——踩下油门,就能飞奔;按下按钮,就能实现功能!
这是一个非常好的问题!让我们用三个比喻来解释:
比喻1:工具箱的升级
比喻2:语言的进化
比喻3:乐高的不同玩法
让我们通过几个对比,帮助孩子理解这个转变:
| 写代码 | ;、大括号{} | ||
| 变量声明 | int age = 10; | age = 10 | |
| 编译运行 | |||
| 内存管理 | |||
| 代码长度 |
C语言版本:
#include<stdio.h>
intmain() {
printf("Hello, World!\n");
return0;
}
孩子需要理解:头文件、main函数、分号、return语句
Python版本:
print("Hello, World!")
孩子只需要知道:print就是"打印",括号里是要打印的内容
看到区别了吗?Python让编程变得简单得不可思议!
如果不想安装软件,可以直接用这些网站(都是免费的):
Windows/Mac安装步骤:
python --version 回车Python 3.x.x 就成功了!Anaconda是一个"超级工具箱",包含了Python和几百个常用的库。
下载地址:https://www.anaconda.com/products/individual
安装完成后,在命令行输入:
python
你会看到这样的提示符:
Python 3.9.7 (default, Sep 16 2021, 16:59:28)
[Clang 12.0.0 (clang-1200.0.32.29)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
这个 >>> 就是Python在说:“我准备好了,请下指令!”
在 >>> 后面输入:
print("Hello, World!")
按回车,你会看到:
Hello, World!
🎉 恭喜!你的第一个Python程序运行成功了!
print("你好,世界!") # 中文也可以
print("Hello" + " " + "World!") # 字符串相加
print("Hello, World!\n" * 3) # 重复3次,\n是换行
还记得C语言中,我们要这样声明变量吗?
int age = 10;
float height = 1.5;
char grade = 'A';
在Python中,一切都变简单了:
age = 10# 整数
height = 1.5# 小数(浮点数)
grade = 'A'# 字符串
is_student = True# 布尔值(True/False)
孩子可以这样理解:在C语言中,我们要先告诉计算机:“请给我一个专门装数字的盒子,我要放10进去”。 在Python中,我们直接说:“这个盒子里放10”,Python会自动判断"10是数字,所以这个盒子是数字盒子"。
| int | 10-5, 0 | int | |
| float | 3.142.5, -0.5 | float | |
| str | "hello"'A', "中文" | char[] | |
| bool | TrueFalse | bool | |
| list | [1, 2, 3]["苹果", "香蕉"] | ||
| dict | {"name": "小明", "age": 10} |
有时候,我们需要把数字变成文字,或者把文字变成数字:
# 数字转字符串
age = 10
age_str = str(age) # 变成"10"
print("我今年" + age_str + "岁") # 可以连接了
# 字符串转数字
score = "95"
score_int = int(score) # 变成95
new_score = score_int + 5# 可以计算了,得到100
print() 是Python中最常用的函数之一,它有很多花样:
# 基本用法
print("Hello")
# 打印多个值,用逗号隔开(自动加空格)
name = "小明"
age = 10
print(name, "今年", age, "岁") # 输出:小明 今年 10 岁
# 指定分隔符
print(name, age, sep="-") # 输出:小明-10
# 不换行(默认print会换行)
print("Loading", end="")
print("...", end="")
print(" Done!") # 输出:Loading... Done!
input() 让程序能"听到"用户说的话:
# 基本用法
name = input("请输入你的名字:")
print("你好,", name)
# 输入数字(注意:input()得到的是字符串)
age_str = input("请输入你的年龄:")
age = int(age_str) # 转换成整数
print("明年你就", age + 1, "岁了")
任务:写一个程序,根据时间问候用户,并记住用户的名字。
# 智能问候程序
print("=== 智能问候程序 ===")
# 获取用户信息
name = input("你好!请问你叫什么名字?")
time_str = input("现在几点了?(请输入0-24的数字)")
time = int(time_str)
# 根据时间问候
if time < 12:
greeting = "上午好"
elif time < 18:
greeting = "下午好"
else:
greeting = "晚上好"
# 输出结果
print(greeting + "," + name + "!")
print("现在是" + time_str + "点,记得要" +
("吃早餐哦!"if time < 9else
"吃午餐哦!"if time < 13else
"吃晚餐哦!"if time < 20else
"准备睡觉啦!"))
运行效果:
=== 智能问候程序 ===
你好!请问你叫什么名字?小明
现在几点了?(请输入0-24的数字)15
下午好,小明!
现在是15点,记得要吃晚餐哦!
任务:做一个能计算加减乘除的计算器。
# 小小计算器
print("=== 小小计算器 ===")
# 获取运算数和运算符
num1 = float(input("请输入第一个数字:"))
operator = input("请选择运算(+ - * /):")
num2 = float(input("请输入第二个数字:"))
# 进行计算
if operator == "+":
result = num1 + num2
operation = "加"
elif operator == "-":
result = num1 - num2
operation = "减"
elif operator == "*":
result = num1 * num2
operation = "乘"
elif operator == "/":
if num2 != 0:
result = num1 / num2
operation = "除"
else:
result = "错误:不能除以0!"
operation = "除"
else:
result = "错误:不支持的运算符!"
operation = ""
# 输出结果
ifisinstance(result, str): # 如果是错误信息
print(result)
else:
print(f"{num1}{operation}{num2} 等于 {result}")
还记得我们用C语言写的猜数字游戏吗?现在用Python重写,看看有多简单!
# 猜数字游戏(Python版)
import random # 导入随机数模块
print("=== 猜数字游戏 ===")
print("我想了一个1-100之间的数字,你能猜出来吗?")
# 生成随机数
secret_number = random.randint(1, 100)
guess_count = 0
max_attempts = 7
while guess_count < max_attempts:
# 获取用户猜测
guess_str = input(f"第{guess_count + 1}次尝试(还剩{max_attempts - guess_count}次):")
guess = int(guess_str)
guess_count += 1
# 判断猜测
if guess < secret_number:
print("太小了!")
elif guess > secret_number:
print("太大了!")
else:
print(f"🎉 恭喜你!第{guess_count}次猜对了!")
break
# 给提示
if guess_count == 3:
hint = "偶数"if secret_number % 2 == 0else"奇数"
print(f"💡 提示:这个数字是{hint}")
elif guess_count == 5:
tens = secret_number // 10
print(f"💡 提示:这个数字的十位数是{tens}")
# 游戏结束
if guess_count == max_attempts and guess != secret_number:
print(f"游戏结束!数字是{secret_number}")
print(f"\n你的得分:{max(0, 100 - guess_count * 10)}分(满分100)")
A:这是一个很好的观察!Python确实比C/C++慢,但:
比喻:送快递用电动车(Python)比跑车(C++)更合适——虽然跑车快,但电动车更灵活、更省油!
A:Python的应用领域非常广泛:
A:Scratch是"图形化编程",像拼图;Python是"文本编程",像写作文。
A:相比C/C++,Python简单很多:
孩子从C/C++转到Python,最大的挑战可能是太自由了!
建议:告诉孩子:“以前你是建筑师,要画精确图纸;现在你是艺术家,可以自由创作!”
当孩子学Python新概念时,对比C/C++的写法:
# Python列表 vs C数组
python_list = [1, 2, 3, 4, 5] # 可以随时变长
# C语言数组:int arr[5] = {1, 2, 3, 4, 5}; 固定长度
# Python字典 vs C结构体
python_dict = {"name": "小明", "age": 10} # 直接创建
# C结构体:要定义struct,再创建变量
让孩子用Python重写之前C/C++的小程序:
效果:孩子会发现"原来用Python这么简单!",建立强大信心。
带孩子体验Python能做,但C/C++很难做的东西:
还记得第22期我们用C语言写的学生信息管理系统吗?现在用Python重写,看看代码能精简多少!
基础要求:
{"name": "xxx", "age": xx, "score": xx}高级挑战:
提示代码框架:
students = [] # 空列表,存放所有学生
whileTrue:
print("\n=== 学生信息管理系统 ===")
print("1. 添加学生")
print("2. 查看所有学生")
print("3. 查找学生")
print("4. 删除学生")
print("5. 退出")
choice = input("请选择操作(1-5):")
if choice == "1":
# 添加学生
pass# 这里写你的代码
elif choice == "2":
# 显示所有学生
pass
# ... 其他选项
学完本期的基础,下一期我们将进入Python的核心部分:
你将学到:
特别预告:我们将会用函数重写猜数字游戏,让它变得更模块化、更易维护!
亲爱的家长朋友:
从第1期的"为什么要学编程",到第31期的C++综合项目,再到现在的Python入门,我们已经一起走过了32期的学习旅程。
如果把这比作一场马拉松,那么:
Python最大的魅力,不是它的语法有多简单,而是它能让孩子的创意快速实现。
当孩子用C语言要100行代码才能完成的任务,用Python10行就搞定时; 当孩子发现自己也能处理Excel数据、画漂亮图表、甚至写简单AI时; 那种"我能创造"的成就感,是任何分数都无法衡量的。
请继续陪伴孩子,保持好奇心,享受编程的乐趣!
下期见! 🐍✨
互动环节:如果您或孩子完成了编程挑战,欢迎在评论区分享代码! 有问题或想法?随时留言,我们会认真阅读每一条评论!
关注我们,不错过每一期精彩内容!