当前位置:首页>python>每天10分钟玩转Python基础篇 - 变量与运算符、条件与循环

每天10分钟玩转Python基础篇 - 变量与运算符、条件与循环

  • 2026-10-07 12:12:46
每天10分钟玩转Python基础篇 - 变量与运算符、条件与循环

学习进度

这是基础篇第 2 篇。上一篇我们把 Python 3.14 装好、用 uv 建好项目,跑通了第一行代码。今天开始正式给程序注入「内容」和「逻辑」:先让数据活起来,再让程序会做选择、会重复劳动。

前言用途

看完这篇,你能写出一个真正有用的程序:给它一个成绩,它告诉你等级;给它一组数据,它帮你统计。文章里的每段代码我都实际跑过,你照抄就能看到同样的结果。

前置知识

•电脑里装好了 Python 3.14 (上一篇教过)
•会打开终端或 IDE ,知道怎么运行一个 .py 文件(用 uv run python 文件名.py)
•会做最简单的 print("你好")

如果你这些还不太熟,翻回上一篇花 10 分钟补一下,再回来读。

通俗原理

变量:给数据贴个名字

编程里最频繁的动作,就是「把数据存起来,等会儿再用」。变量就是这个功能:用 = 把右边的值赋给左边的名字。

age=18# 整数price=9.9# 小数(浮点数)name="飞熊"# 文本(字符串)print(age,type(age))print(price,type(price))print(name,type(name))

运行结果:

18<class'int'>9.9<class'float'>飞熊<class'str'>

注意几个细节:

•你不需要声明「这是个整数」或「这是个字符串」, Python 看赋值自动判断,这就是「动态类型」。
•type() 是内置函数,用来查看数据的类型,调试时特别好用。
•字符串必须用引号包起来,单引号双引号都行。
•变量名不要用中文,用英文或拼音,可以带数字,但不能用数字开头。

Python 里最常用的基础类型就三种:int 整数、float 小数、str 字符串。以后还会见到列表、字典这些,那是用来装多个数据的。

运算符:让数据动起来

数据放好之后,要对它们做运算。最基本的算术运算符长这样:

print(17/3)# 除法:总是返回小数print(17//3)# 地板除:只留整数部分print(17%3)# 取余数print(2**10)# 幂运算:2 的 10 次方

运行结果:

5.666666666666667521024

这里有个新手最容易困惑的点:/ 和 // 的区别。/ 是普通除法,结果一定是小数;// 是地板除,结果只保留整数部分。% 是取余数,用来判断「能不能整除」特别方便。

除了算术运算符,还有比较运算符,结果只有 True 和 False 两种:

print(5>3)# 大于print(5==3)# 等于(注意是两个等号!)print(5!=3)# 不等于print(5>=5)# 大于等于

运行结果:

TrueFalseTrueTrue

条件判断:让程序会做选择

有了比较运算符,就能让程序「看情况办事」了。语法是 if / elif / else:

score=85ifscore>=90:print("优秀")elifscore>=80:print("良好")elifscore>=60:print("及格")else:print("不及格")

运行结果:

良好

规则很简单:

•if 后面的条件成立,执行它的代码块;不成立就往下看 elif。
•elif 是「否则如果」的缩写,可以写任意多个,从上往下第一个成立的就执行。
•else 兜底,前面都不成立时执行,可以省略。
•冒号结尾,下一行必须缩进。缩进是 Python 表示「这块代码属于谁」的方式,同一个代码块缩进必须一致,默认用 4 个空格。

循环:让程序会重复

手工重复的事,程序最擅长。两种循环:for 适合「数一遍」,while 适合「直到条件不成立」。

for 最常见搭配是 range(),生成一串整数:

foriinrange(5):print(i)

运行结果:

01234

关键点:range(5) 生成的是 0 到 4 ,不含 5 。 这是 Python 的惯例,所有范围都是「含头不含尾」。range 还能指定起点和步长:

print(list(range(5)))# 0 到 4print(list(range(5,10)))# 5 到 9print(list(range(0,10,3)))# 0 开始,每次加 3

运行结果:

[0, 1, 2, 3, 4][5, 6, 7, 8, 9][0, 3, 6, 9]

for 还可以直接遍历列表里的每个元素(列表就是方括号装一串数据,下一篇细讲,先用起来):

forfruitin["苹果","香蕉","橙子"]:print(fruit)

运行结果:

苹果香蕉橙子

完整代码

把今天学的串起来,写一个「成绩评级 + 统计及格人数」的小程序。新建 grade.py,完整代码如下:

score=85ifscore>=90:level="优秀"elifscore>=80:level="良好"elifscore>=60:level="及格"else:level="不及格"print(f"成绩 {score} 分,等级:{level}")scores=[88,92,55,73,61]pass_count=0forsinscores:ifs>=60:pass_count=pass_count+1print(f"及格人数:{pass_count} 人")

运行结果

用 uv run python grade.py 运行:

成绩 85 分,等级:良好及格人数:4 人

如果你改 score = 58,第一行会变成「成绩 58 分,等级:不及格」;把 scores 里的数字改一改,统计结果也会跟着变。这就是程序的意义:数据变,逻辑不变,结果自动跟着变。

踩坑总结

这些错我第一次学的时候全踩过,提前告诉你:

1.字符串和数字不能直接相加。"成绩" + 85 会报错 TypeError: can only concatenate str (not "int") to str。要么把数字转成字符串 str(85),要么用 f-string :f"成绩{85}分"。
2.比较用 ==,赋值用 =。if score = 85: 是语法错误,直接报错。
3.range(5) 不含 5。想输出 1 到 5 ,要写 range(1, 6)。
4.变量必须先赋值再用。用没定义过的变量,报 NameError: name 'xxx' is not defined。
5.缩进错误。if 下面不缩进,报 IndentationError: expected an indented block。看到这个错,先检查缩进。

进阶拓展

两个循环控制词,能让循环更灵活:

•break:立刻跳出整个循环。比如找第一个满足条件的数就停:
foriinrange(10):ifi==3:breakprint(i)

运行结果:

012
•continue:跳过本轮,直接进入下一轮。比如不打印 2 :
foriinrange(5):ifi==2:continueprint(i)

运行结果:

0134

while 适合「不知道要循环几次」的场景。比如数到 5 就停:

n=1whilen<=5:print(n)n=n+1

运行结果:

12345

注意:while 的条件永远为真就会死循环。上面的代码别忘了 n = n + 1 这行,它让条件最终不成立。死循环时按 Ctrl+C 强制中断。

小结

今天学会了 4 件事:

•变量用 = 赋值, Python 自动判断类型;三种基础类型是 int、float、str。
•运算符:/ 除法返回小数,// 地板除取整,% 取余,** 幂;比较运算符返回 True/False。
•条件判断 if/elif/else,让程序做选择;代码块靠缩进分组。
•循环:for + range() 遍历固定次数,while 循环到条件不成立;break 跳出、continue 跳过。

自检清单:能不看笔记写出 if/elif/else 判断成绩等级吗?能说出 range(5) 输出 0 到 4 而不是 1 到 5 吗?能说出字符串和数字相加为什么报错吗?都答上来,这篇就过关了。

最新文章

随机文章