欢迎青少年来到python编程的魔法世界!

【本文接续 上一篇:欢迎来到 Python Turtle(海龟作画)的魔法世界!https://blog.csdn.net/cnds123/article/details/162560701 】

Python 的语法非常接近自然语言,代码可读性极高。比如打印一句“Hello World”,Python 只需一行代码,而 C++ 需要多行复杂的结构。学习者能快速看到结果,获得成就感,而不是被繁琐的格式劝退。

Python(大家都叫它“大蟒蛇”)是目前世界上最受欢迎、也最容易学的编程语言之一。Python入门快,应用广:游戏,人工智慧(AI)聊天机器人,甚至连火箭发射的控制逻辑,都有 Python 的功劳。

先看看python能做什么?下面给出几案例

基于多个大模型自己建造一个AI智能助手(增强版) https://blog.csdn.net/cnds123/article/details/155303319

中学物理模拟实验Python程序集成打包https://blog.csdn.net/cnds123/article/details/149277663

使用python + pygame 编写小游戏:炮兵训练 https://blog.csdn.net/cnds123/article/details/146918665 

只要你会用键盘输入,就是小学生也不用担心自己没有基础,跟着下面的步骤走,你很快就能成为一名“初级代码魔法师”!

预备 python运行环境

在写代码之前,我们需要一个可以写代码并运行它的工具——python运行环境。

刚开始用 IDLE 或在线编辑器就足够,等熟练了再换更强大的工具。(Python 自带)

安装版

Download Python | Python.org

到这个官方网站上,运行下载的安装程序。⚠️ 极其重要的一步:在安装界面的底部,务必勾选 “Add Python to PATH”(将 Python 添加到环境变量),然后点击安装。

IDLE即Integrated Development and Learning Environment(集成开发与学习环境)是随 Python 安装包一起免费附赠的轻量级的编程工作台, 主要由两个核心部分组成,两种写代码的方式:

交互式 Shell 窗口:交互式 Shell(“即时聊天室”)

你敲一行代码,它立刻给你结果,就像和 Python 面对面聊天。

适合:做小实验、测试简单指令、当计算器用。

怎么进?打开 IDLE,默认进来的就是这个黑底/白底的窗口,前面带着 >>> 提示符。

看到 >>> 就表示 Python 在等你“发号施令”呢!但是,关掉窗口后,这里写的所有代码都会消失,没法保存。

编辑器窗口:文件编辑器(“笔记本写作”)

这是一个可以写多行代码、保存成文件(比如 game.py)的地方。写完后按 F5 键,就能把整份“剧本”一次性交给 Python 表演。

适合:写完整的程序。

怎么进?在 IDLE 菜单栏点击 File → New File(或按 Ctrl+N / Cmd+N)。

具体使用可参见;python IDLE的简明图示使用说明 https://blog.csdn.net/cnds123/article/details/120447451 

在线版

Python Playground - Online Python Compiler & IDE

“在线版”指的是在线Python编译器(或称为在线Python运行平台),你不需要在电脑上下载和安装任何复杂的软件,只要打开浏览器、连上网络,就可以直接在网页里编写、运行和测试Python代码24。这对于不想折腾电脑配置的初学者来说,非常方便。

重要提醒

Python严格区分大小写,a和A是两个完全不同的东西;所有指令关键字、括号、逗号、引号,必须是英文半角符号,中文符号一定会报错;

常见报错与纠错手册

新手报错90%都是这几个问题,对照修改即可!

1. SyntaxError 语法错误:多半是中文符号、漏冒号、括号不匹配

2. IndentationError 缩进错误:if、for下方代码没缩进、缩进不统一

3. TypeError 类型错误:文字和数字直接拼接,没转换类型

4. NameError 变量错误:变量名写错、大小写不一致

第一: 让电脑开口说话

现在,我们要写下人生的第一行代码。这就好比对电脑施展“开口说话”的咒语。

在Python里,想让屏幕显示文字,我们要用到 print() 函数。别误会,它不是打印机的那个“打印”,而是“输出”的意思。

在编辑器的空白处输入以下代码:

print("Hello, 编程世界!我来啦!")

魔法解析

print:这是“指令”(命令)的名字(函数名)。

():小括号里放的是我们要说的话。

"":引号表示里面是文字(字符串),必须成对出现!

特别提示:所有的标点符号(括号、引号)必须在英文输入法状态下输入,否则咒语会失效(报错)!

点击软件上方的“运行(Run)”按钮。瞧!屏幕下方是不是出现了你写的那句话?恭喜你,魔法生效了!

第二章:神奇的收纳盒 —— 变量

你的口袋里有很多东西:金币、魔法石、糖果。用Python编程时,我们需要“盒子”来装存一些数据,比如玩家的名字、游戏得分等。

2.1创建变量——给盒子贴标签

我们可以给盒子起名字,把东西放进去。

年龄 = 12          # 把数字 12 放进“年龄”盒子

名字 = "小明"      # 把文字放进“名字”盒子

身高 = 1.55        # 小数也可以

是学生 = True      # True 表示“真”,False 表示“假”

魔法解析:

开头的#号是注释,它是写给你自己看的,电脑会假装看不见它。

=号在编程里不表示“等于”,而是表示“放进去”(赋值)。把右边的数值,放进左边的箱子里。

小贴士:Python 是动态类型语言——你不用提前告诉盒子要装什么类型,它自己会“看”出来。

2.2使用变量

print(名字)        # 输出:小明

print("我今年", 年龄, "岁")

年龄 = 年龄 + 1    # 年龄变成 13

print("明年我就", 年龄, "岁了")

2.3变量的命名规则

原则上建议只用英文字母、数字、下划线,且不能以数字开头(新版本虽然支持中文变量名,但为了代码的通用性和避免乱码,强烈推荐使用英文命名)。

不能使用 Python 的关键字(如 if、for、while 等)。

尽量用有意义的英文名,比如 score、name,而不是 a、b(除非循环变量)。

# 好的命名

student_name = "小红"

score_math = 95

# 不好的命名(虽然能运行,但别人看不懂)

s = "小红"

m = 95

第三章:魔法计算 —— 数据类型与运算

Python不仅会说话,还是个数学天才。它能识别不同的“魔法材料”(数据类型)。

数据类型相当于物品类型。

3.1 常见的材料

整数:像 1, 100, -5。

浮点数 float:带小数点的数字,例:3.14、98.5、0.5

字符串:像 "你好", "abc"。必须加引号。

3.2 奇怪的加法

print(10 + 20)      # 结果是多少?

print("10" + "20")  # 结果又是多少?

魔法解析:

第一句:数学计算,结果是 30。

第二句:字符串拼接,就像把两块粘土粘在一起,结果是 "1020"。

特别提示:类型不能乱炖,例如数字和字符串不能直接相加!print(10 + "岁") 会报错,你需要把数字变成字符串:print(str(10) + "岁")。数字转文字要用 str() 函数,才能和文字拼接。

3.3 魔法运算符

+ 加

- 减

* 乘

/ 除

// 整除(向下取整数部分,比如 7 // 2 结果是 3,-7//2 得 -4。)

% 取余(求剩下的数,比如 7 % 2 结果是 1)

试一试:

cats = 3
dogs = 5

total_animals = cats + dogs
print("家里小动物的总数是:")
print(total_animals)

建议你可以试着把+换成-(减)、*(乘,键盘上的 Shift + 8)、/(除),看看电脑算得有多快!

运算符+ 有两种功能:拼接与计算:

1. 数字变量可以直接计算

a = 10
b = 20
c = a + b
print("总和是:", c)

2. 文字变量可以拼接

name = "小红"
word = "是编程小能手"
print(name + word) #输出:小红是编程小能手

章:跟电脑

如果只能我们单方面写死数据,那就太无聊了。现在,我们要让电脑向你提问,并记住你的回答。

# 用 input 获取你的回答,并存到 "your_color" 箱子里

# 用 input 获取你的回答,并存到 "your_color" 箱子里
your_color = input("你最喜欢什么颜色?")

print("哇,我也觉得 " + your_color + " 是世界上最酷的颜色!")

魔法解析:

input()是一个接收键盘输入的指令。

默认情况下,input() 输入的所有内容都是文字,不能直接算数。想要输入数字计算,必须转换类型:

- int(内容):转为整数

- float(内容):转为小数

示例:

# 输入两个数字并求和,请务必输入纯数字。
num1 = int(input("请输入第一个数字:"))
num2 = int(input("请输入第二个数字:"))
res = num1 + num2
print("两数相加结果是:", res)

章:魔法判断 —— 条件语句

生活中有很多“如果……那么……”:

如果下雨,就带伞;否则不带。

如果成绩大于等于 90,就评“优秀”。

Python 用 if、elif、else 来实现。

5.1 基本格式

基础if语句(如果…就…)

语法格式(注意冒号和缩进!)

if 条件成立:

    条件成立才执行的代码

超级重要:冒号不能丢,缩进不乱改!

示例:设我们要做一个“是否允许进入魔法商店”的程序:只有年龄大于等于12岁才能进。

age = 10

if age >= 12:
    print("欢迎光临魔法商店!")
else:
    print("对不起,你还太小了,去隔壁糖果店吧。")

魔法解析:

if:如果。

>=:大于等于(还有 == 等于,!= 不等于)。

::冒号表示“下面是满足条件后要做的事”。

缩进:注意看 print 前面有4个空格(或者按一下Tab键)。这叫缩进。Python非常严格,缩进代表“这行代码归上面那个 if 管”。如果丢掉缩进,代码就会报错哦!

多等级判断

一个复杂点的示例:

score = 85

if score >= 90:
    print("优秀!")
elif score >= 80:
    print("良好!")
elif score >= 60:
    print("及格了!")
else:
    print("需要加油哦!")

魔法解析:

elif 的含义:elif 是“排着队检查”的意思。它必须跟在 if 后面,不能单独出现。它表示:“如果上面的条件都不满足,那就来看看我这一条。”

互斥性:在 if 和 elif 组成的链条中,一旦有某一个条件满足并执行了代码,程序就会立刻退出整个判断链条,不再理会后面的条件。程序是从上往下逐个判断的。如果你的代码写成这样(错误示范):

    if score >= 60:
        print("及格!")
    elif score >= 80:
        print("良好!")

当 score = 85 时,程序先判断 >= 60,发现满足条件,直接打印“及格!”并结束。

特别提醒,在写多条件判断时,条件范围要从大到小、或者从窄到宽(即把最严格、最难达到的条件写在最前面,比如先判断满分,再判断及格),否则会出现逻辑漏洞。

else 是最后的退路:如果前面所有的 if 和 elif 都没有通过,那么 else 里的代码一定会执行。它不需要写条件,因为它代表了“其他所有情况”。

5.2 比较运算符

== 等于(注意是两个等号!)

!= 不等于

> 大于,< 小于,>= 大于等于,<= 小于等于

5.3 逻辑运算符

and:两边都为真才真

or:至少一边为真就真

not:取反

示例:

age = 15
if age >= 12 and age <= 18:
    print("你是青少年")

if not (age < 10):
    print("你不小于10岁")

魔法解析

这次的例子(独立关系):这里有两个完全独立的 if 语句。

第1个中逻辑运算符 and:这是“与”的意思,可以理解为**“并且”**。

判定逻辑:and 就像是一个严格的门卫,它要求两边的条件必须同时成立,大门才会打开。

左边条件:age >= 12。15岁大于12岁吗? 成立。

右边条件:age <= 18。15岁小于等于18岁吗? 成立。

结论:既然两边都成立(True and True),整个 if 语句的结果就是成立。

行动:执行打印,输出“你是青少年”。

2个中逻辑运算符 not:这是“非”的意思,可以理解为**“不是”或“反转”**。它像一面魔镜,把真变成假,把假变成真。

判定逻辑:我们要分两步走。

第一步(看括号里):先看 age < 10。15岁小于10岁吗? 不成立。

第二步(看魔镜):not 把结果反转了。

原本是“不成立”,not 反转后变成了 “成立”。

结论:if 后面的条件最终变成了“成立”。

行动:执行打印,输出“你不小于10岁”。

第六章:让电脑帮你“重复劳动” —— 循环

人类讨厌重复,但电脑最喜欢重复!循环就是让程序反复执行某段代码。

6.1 for 循环:—— 遍历“序列”

for i in range(3):
    print("呼神护卫!")
    print("这是第", i+1, "次")

魔法解析:

range() 快速生成数字序列

range(n):生成 0 到 n-1 的数字

range(a,b):生成 a 到 b-1 的数字,“左闭右开,包含开头不包含结尾”(如 range(1,6) 拿不到 6)

range(3):生成一个计数器,从0数到2(共3个数:0, 1, 2)。

i:是一个变量,每次循环都会变。第一次 i 是0,第二次是1…

range(start, end) 从 start 开始,到 end-1 结束。例如:

# 打印 1 到 5
for i in range(1, 6):   # range(1,6) 生成 1,2,3,4,5
    print(i)

遍历字符串:

for letter in "Python":
    print(letter)

遍历列表(后面会学):

fruits = ["苹果", "香蕉", "橘子"]
for fruit in fruits:
    print("我喜欢", fruit)

6.2 while 循环 —— 只要条件成立,就一直做

count = 1
while count <= 5:
    print("第", count, "次")
    count = count + 1   # 别忘了改变条件,否则会死循环!

注意死循环:记得设置退出条件!如果 while 的条件永远为真,且没有 break,程序会一直运行,可能卡死电脑。可能会变成“死循环”——永远停不下来!按 Ctrl + C 强行停止。

6.3 break 和 continue

break:跳出循环(终止)

continue:跳过本次,继续下一次

示例:

for num in range(1, 10):
    if num == 5:
        break   # 到5就停
    print(num)
# 输出 1 2 3 4

for num in range(1, 6):
    if num % 2 == 0:   # 偶数跳过
        continue
    print(num)
# 输出 1 3 5

章:列表 —— 装东西的“大书包”

列表就像一个可以装很多数据的“大书包”,你可以往里放数字、字符串、甚至其他列表。

7.1 创建和访问

scores = [90, 85, 78, 92, 88]

print(scores[0])   # 第1个元素,索引从0开始:90

print(scores[3])   # 第4个元素:92

print(scores[-1])  # 倒数第1个:88

7.2 修改、添加、删除

scores[1] = 95     # 把85改成95

scores.append(100) # 在末尾添加100

scores.insert(2, 80) # 在索引2位置插入80

scores.remove(78)  # 删除第一个出现的78

del scores[0]      # 删除索引0的元素

7.3 遍历列表

total = 0
for s in scores:
    total = total + s
average = total / len(scores)   # len() 求长度
print("平均分:", average)

7.4 列表切片(取一部分)

nums = [0, 1, 2, 3, 4, 5]

print(nums[1:4])   # [1, 2, 3]  索引1到3

print(nums[:3])    # [0, 1, 2]  开头到索引2

print(nums[3:])    # [3, 4, 5]  索引3到末尾

print(nums[::2])   # [0, 2, 4]  步长为2

章:函数 —— 把多条指令包装起来“起个外号”

想象一下,你每天早上起床都要做三件事:刷牙、洗脸、吃早饭。

如果每次都要跟妈妈说一遍“我要刷牙、洗脸、吃早饭”,太累了。

于是你发明了一个新词叫 “开工”。

以后你只要喊一声 “开工!” ,妈妈就知道你要做那三件事了。

在编程里,函数就是干这个的!

把一堆经常要用的代码打包起来,给它取个名字。以后只要喊这个名字(调用函数),电脑就会自动执行里面的所有步骤。

8.1定义函数和调用

我们要用 def(define的缩写,意思是“定义”)来定义函数。

调用函数就是启动/应用函数。

示例:

def say_hello():
    print("你好呀!")

# 调用
say_hello()   # 输出:你好呀!

8.2 带参数的函数

def greet(name):
    print("你好,", name)

greet("小智")  # 你好,小智
greet("小美")  # 你好,小美

8.3 带返回值的函数

def add(a, b):
    return a + b

result = add(3, 5)
print(result)   # 8

return 会结束函数,并返回结果。没有 return 则返回 None(空值)。return 一旦执行,函数立刻结束,后面的代码都不会运行了。

8.4 默认参数

def power(base, exponent=2):
    return base ** exponent

print(power(3))     # 9 (默认平方)
print(power(3, 3))  # 27

提示:Python 和 C++  定义函数时,通过语法强制默认参数必须放最后,否则报错。

8.5 为什么用函数?

避免重复:一段代码写一次,到处用。

条理清晰:把大任务拆成小功能,像搭积木。

容易修改和排查错误:改一个地方,所有调用都更新;出 bug(漏洞/缺陷) 时只需检查函数内部,不用满篇找。

掌握了函数,你就掌握了编程界最重要的“乐高积木”。你学会了把大问题拆解成小模块,逐个击破。这就是软件工程师思维的核心之一!

8.6 新手避坑指南

忘记括号:

定义时写 def my_func():,调用时必须写 my_func()。如果只写 my_func,Python会以为你在说“这台机器叫什么名字”,而不会启动机器。

缩进错误:

函数内部的代码必须缩进。如果和 def 对齐,Python会以为函数已经结束了。

变量作用域(进阶陷阱):

函数内部的变量(局部变量),外面是看不见的。例如:

def test():
    x = 10  # 这是局部变量
    
test()
print(x)  #  报错!外面找不到x

第九章:小项目:编写一个“猜数字”小游戏!

现在,你已经掌握了足够的魔法,可以把它们组合起来,创造属于自己的第一个电脑游戏了!

把下面这段代码完整地复制到编辑器里,然后运行它,和电脑拼拼智商吧:

import random  # 引入一个魔法工具箱,用来产生随机数

# 电脑悄悄想好一个 1 到 20 之间的数字(整数)
secret_number = random.randint(1, 20)
print("🧙‍♂️ 巫师:我已经想好了一个 1 到 20 之间的数字。")
print("你只有 5 次机会,来猜猜看吧!")

# 给你 5 次机会
for attempt in range(1, 6):
    guess = input("第 " + str(attempt) + " 次尝试,请输入你猜的数字:")
    guess = int(guess)  # 把你的输入变成真正的数字才能进行对比,请务必输入纯数字。

    if guess < secret_number:
        print("💡 提示:太小了,再大一点!")
    elif guess > secret_number:
        print("💡 提示:太大了,再小一点!")
    else:
        print("🎉 恭喜你!你猜对了!你真是天才!")
        break  # 猜对了就提前结束游戏

else:
    # 如果 5 次都没猜对,就会执行这里
    print("呜呜,机会用光啦!我想的数字其实是 " + str(secret_number) + "。")

第十章:结语——给小程序员的忠告

犯错很正常——每个程序员每天都会遇到错误(叫做 bug)。错误信息是好朋友,它告诉你哪里出问题了,耐心阅读它。

先想后写——在写代码前,用笔或白话描述你要做的事,这叫“算法设计”。

多动手——光看教程不够,一定要自己敲一遍,再改改参数,看看会发生什么。

善用AI——遇到问题,把错误信息用语音、文字、截图等向 AI 提问,通常能找到答案。

享受创造——编程是创造新东西的魔法,通过此文,你已经学会了 Python 的基石,继续学习动手去试吧,你可以做游戏、画图、处理数据……尽情发挥想象力!

下一步去哪?

Python青少年简明教程目录https://blog.csdn.net/cnds123/article/details/142349507

附录:

HTML实现的python程序员英语学习小工具 https://blog.csdn.net/cnds123/article/details/155158561

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐