2
基础语法:变量、类型、流程控制
Variables, Types & Flow Control
这一章是地基。变量就是贴了标签的盒子;Python 是动态类型语言,你不用提前声明盒子里装的是数字还是文字,放进去就是了。流程控制就是"如果……就……"和"重复做……"。
变量与动态类型
name = "小明" # 字符串
age = 18 # 整数
height = 1.75 # 浮点数
is_student = True # 布尔值,注意首字母大写
print(type(name)) # <class 'str'>
print(type(age)) # <class 'int'>
# 动态类型:同一个变量,今天装数字,明天能改装字符串
x = 100
x = "现在是字符串了"
print(x) # 现在是字符串了
基本数据类型一览
| 类型 | 例子 | 说明 |
|---|---|---|
int | 42 | 整数,Python 的 int 可以无限大,不会溢出。 |
float | 3.14 | 浮点数,注意 0.1+0.2 ≠ 0.3(见常见坑)。 |
bool | True / False | 布尔值,首字母必须大写,True 本质是 1,False 是 0。 |
str | "你好" | 字符串,单引号双引号都行。 |
NoneType | None | 空值,相当于"什么都没有",不是 0 也不是空字符串。 |
字符串:切片、f-string、常用方法
s = "Hello, Python"
# 切片:[起始:结束:步长],左闭右开
print(s[0]) # H 第0个字符
print(s[0:5]) # Hello 第0到第4个,不含第5个
print(s[-1]) # n 倒数第一个
print(s[7:]) # Python 从第7个到结尾
print(s[::-1]) # nohtyP ,olleH 整个反转
# f-string:Python 3.6+ 最推荐的字符串格式化,花括号里直接放变量
name = "小明"
age = 18
print(f"{name}今年{age}岁") # 小明今年18岁
print(f"{age * 2}年后") # 36年后
# 常用方法
print(" hi ".strip()) # "hi" 去两端空格
print("a,b,c".split(",")) # ['a', 'b', 'c'] 按逗号切成列表
print("-".join(["a","b","c"])) # a-b-c 用横线把列表拼起来
print("Hello".lower()) # hello 转小写
print("Hello".replace("H","J")) # Jello 替换
运算符
| 类别 | 运算符 | 例子 / 说明 |
|---|---|---|
| 算术 | + - * / // % ** | 7//2=3(整除),7%2=1(取余),2**3=8(幂)。 |
| 比较 | == != > < >= <= | 注意相等判断是两个等号,一个等号是赋值。 |
| 逻辑 | and or not | Python 用英文单词,不是 && || !。 |
| 成员 | in / not in | "a" in "abc" 为 True。 |
| 身份 | is / is not | 判断是不是同一个对象,别用它比数字字符串(见常见坑)。 |
流程控制:if / for / while
# if / elif / else
score = 85
if score >= 90:
print("优秀")
elif score >= 60:
print("及格")
else:
print("补考")
# 输出:及格
# for 循环:遍历一个序列
for i in range(3): # range(3) 给出 0,1,2
print(f"第{i}次")
# while 循环:条件为真就一直转
n = 3
while n > 0:
print(n)
n -= 1 # Python 没有 n--,得写 n -= 1
# break 跳出整个循环;continue 跳过本次,继续下一轮;pass 是空占位
for i in range(10):
if i == 5:
break # 到5就整个退出
if i % 2 == 0:
continue # 偶数跳过,只打印奇数
print(i)
# 输出:1 3
规缩进规则:Python 的灵魂
别的语言用花括号 {} 圈住代码块,Python 用缩进。同一层级的代码必须对齐——通常 4 个空格。少一个空格、多一个空格、混用 Tab 和空格,都会报 IndentationError。别用 Tab,VS Code 设成"按 Tab 插入 4 个空格"就一劳永逸。这习惯刚开始别扭,三个月后你会觉得别的语言没缩进读代码像看天书。