你现在阶段不用背“Python 全部语法”,先把这些高频东西搞熟就够用了。
1. 先分清三类东西
| 类型 | 例子 | 说明 |
|---|---|---|
| 保留字 / 关键字 | if、for、def、return | Python 语法本身,不能当变量名 |
| 内置函数 | print()、len()、range()、int() | Python 自带函数 |
| 对象方法 | .append()、.index()、.split() | 某种数据类型自己的功能 |
比如:
nums = [1, 2, 3]
nums.append(4)
这里 .append() 是列表方法,不是保留字。
2. 判断语句
2.1 if / elif / else
score = 85
if score >= 90:
print("优秀")
elif score >= 60:
print("及格")
else:
print("不及格")
常用判断符号:
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
3. 逻辑运算
3.1 and / or / not
if n % 2 == 0 and n % 7 == 0:
print("同时能被2和7整除")
| 写法 | 意思 |
|---|---|
and | 并且,两个条件都要满足 |
or | 或者,满足一个就行 |
not | 取反 |
例子:
if age >= 18 and money >= 100:
print("可以买票")
4. 循环
4.1 for
适合遍历固定范围:
for i in range(1, 6):
print(i)
输出:
1
2
3
4
5
4.2 while
适合不知道具体循环次数,但知道停止条件:
i = 1
while i <= 5:
print(i)
i += 1
4.3 break
直接结束循环:
for i in range(1, 10):
if i == 5:
break
print(i)
输出:
1
2
3
4
4.4 continue
跳过本轮,继续下一轮:
for i in range(1, 6):
if i == 3:
continue
print(i)
输出:
1
2
4
5
5. range() 用法
5.1 只写一个数
range(5)
表示:
0, 1, 2, 3, 4
不包含 5。
5.2 写开始和结束
range(1, 6)
表示:
1, 2, 3, 4, 5
包含开始,不包含结束。
5.3 写步长
range(2, 101, 2)
表示:
2, 4, 6, 8, ..., 100
倒着来:
range(20, 2, -1)
表示:
20, 19, 18, ..., 3
6. 函数
6.1 def / return
def add(a, b):
return a + b
print(add(3, 5))
输出:
8
重点:
return # 返回结果
print # 打印结果
函数里面最好用 return,外面再 print()。
6.2 默认参数
def calc(num1, num2, oper="+"):
if oper == "+":
return num1 + num2
elif oper == "-":
return num1 - num2
调用:
print(calc(10, 5)) # 默认加法
print(calc(10, 5, "-")) # 减法
7. 常用内置函数
| 函数 | 作用 |
|---|---|
print() | 输出 |
input() | 输入 |
int() | 转整数 |
float() | 转小数 |
str() | 转字符串 |
len() | 求长度 |
range() | 生成数字范围 |
type() | 查看类型 |
sum() | 求和 |
max() | 最大值 |
min() | 最小值 |
abs() | 绝对值 |
round() | 四舍五入 |
open() | 打开文件 |
例子:
nums = [3, 5, 1]
print(len(nums)) # 3
print(sum(nums)) # 9
print(max(nums)) # 5
print(min(nums)) # 1
8. 列表 list
列表用 []。
nums = [1, 2, 3, 4]
8.1 访问元素
print(nums[0]) # 第一个
print(nums[1]) # 第二个
下标从 0 开始。
8.2 常用列表方法
| 方法 | 作用 |
|---|---|
append(x) | 末尾添加 |
insert(index, x) | 指定位置插入 |
remove(x) | 删除第一个指定值 |
pop(index) | 按下标删除 |
index(x) | 找元素位置 |
count(x) | 统计出现次数 |
sort() | 排序 |
reverse() | 反转 |
clear() | 清空列表 |
copy() | 复制列表 |
8.3 append()
nums = [1, 2, 3]
nums.append(4)
print(nums)
输出:
[1, 2, 3, 4]
8.4 insert()
nums = [1, 2, 4]
nums.insert(2, 3)
print(nums)
输出:
[1, 2, 3, 4]
8.5 remove()
nums = [1, 2, 3, 2]
nums.remove(2)
print(nums)
输出:
[1, 3, 2]
只删除第一个匹配的值。
8.6 pop()
nums = [10, 20, 30]
x = nums.pop(1)
print(x)
print(nums)
输出:
20
[10, 30]
8.7 index()
names = ["张三", "李四", "王五"]
print(names.index("李四"))
输出:
1
找不到会报错,所以安全写法:
if "赵六" in names:
print(names.index("赵六"))
else:
print("没找到")
8.8 sort()
nums = [3, 1, 5, 2]
nums.sort()
print(nums)
输出:
[1, 2, 3, 5]
倒序:
nums.sort(reverse=True)
9. 字符串 str
字符串用引号:
s = "hello python"
9.1 常用字符串方法
| 方法 | 作用 |
|---|---|
split() | 分割字符串 |
strip() | 去掉两边空格 |
replace() | 替换内容 |
find() | 查找位置,找不到返回 -1 |
index() | 查找位置,找不到报错 |
count() | 统计次数 |
upper() | 转大写 |
lower() | 转小写 |
startswith() | 判断开头 |
endswith() | 判断结尾 |
join() | 拼接字符串 |
9.2 split()
s = "hello python world"
words = s.split()
print(words)
输出:
['hello', 'python', 'world']
按逗号分割:
s = "张三,李四,王五"
print(s.split(","))
9.3 strip()
s = " hello "
print(s.strip())
输出:
hello
9.4 replace()
s = "我喜欢Java"
s = s.replace("Java", "Python")
print(s)
输出:
我喜欢Python
9.5 find()
s = "hello python"
print(s.find("python"))
输出:
6
找不到:
print(s.find("java"))
输出:
-1
10. 字典 dict
字典用 {},是键值对。
student = {
"name": "张三",
"age": 18
}
访问:
print(student["name"])
输出:
张三
10.1 常用字典方法
| 方法 | 作用 |
|---|---|
keys() | 获取所有键 |
values() | 获取所有值 |
items() | 获取键值对 |
get(key) | 安全获取值 |
update() | 更新字典 |
pop(key) | 删除某个键 |
clear() | 清空字典 |
10.2 get()
student = {"name": "张三", "age": 18}
print(student.get("name"))
print(student.get("score"))
输出:
张三
None
get() 找不到不会报错。
可以设置默认值:
print(student.get("score", 0))
10.3 遍历字典
student = {"name": "张三", "age": 18}
for key, value in student.items():
print(key, value)
输出:
name 张三
age 18
11. 元组 tuple
元组用 (),不能修改。
t = (1, 2, 3)
访问:
print(t[0])
常用场景:保存不想被修改的数据。
12. 集合 set
集合用 {},特点是去重。
nums = {1, 2, 2, 3}
print(nums)
输出:
{1, 2, 3}
常用方法:
| 方法 | 作用 |
|---|---|
add() | 添加 |
remove() | 删除 |
discard() | 删除,不存在也不报错 |
例子:
s = {1, 2, 3}
s.add(4)
s.remove(2)
print(s)
13. 判断存在:in
nums = [1, 2, 3]
if 2 in nums:
print("存在")
字符串也可以:
s = "hello python"
if "python" in s:
print("包含 python")
14. 随机数 random
先导入:
import random
14.1 随机整数
num = random.randint(1, 100)
print(num)
包含 1 和 100。
14.2 从列表里随机选一个
names = ["张三", "李四", "王五"]
print(random.choice(names))
14.3 随机小数
print(random.random())
生成 0~1 之间的小数。
15. 文件操作
15.1 读取文件
with open("data.txt", "r", encoding="utf-8") as f:
content = f.read()
print(content)
15.2 写入文件
with open("data.txt", "w", encoding="utf-8") as f:
f.write("hello python")
w 会覆盖原文件。
15.3 追加文件
with open("data.txt", "a", encoding="utf-8") as f:
f.write("\n新的内容")
a 是追加,不会覆盖。
15.4 文件模式
| 模式 | 作用 |
|---|---|
"r" | 读取 |
"w" | 写入,覆盖原内容 |
"a" | 追加 |
"rb" | 二进制读取 |
"wb" | 二进制写入 |
16. 异常处理
try:
print(10 / 0)
except ZeroDivisionError:
print("不能除以0")
常见结构:
try:
可能出错的代码
except:
出错后执行的代码
17. 导入模块
import random
from math import sqrt
import os
常用模块:
| 模块 | 作用 |
|---|---|
random | 随机数 |
math | 数学 |
os | 文件目录操作 |
csv | CSV 文件 |
time | 时间 |
datetime | 日期时间 |
18. 常见套路
18.1 找出满足条件的数字
result = []
for i in range(1, 101):
if i % 2 == 0:
result.append(i)
print(result)
18.2 统计数量
count = 0
for i in range(1, 101):
if i % 2 == 0:
count += 1
print(count)
18.3 求和
total = 0
for i in range(1, 101):
total += i
print(total)
18.4 累乘
result = 1
for i in range(20, 2, -1):
result *= i
print(result)
18.5 判断函数
def is_ok(n):
if n % 2 == 0 and n % 7 == 0:
return 1
else:
return 0
18.6 列表函数
def find_even():
result = []
for i in range(1, 101):
if i % 2 == 0:
result.append(i)
return result
19. 你现在最该掌握的核心组合
def 函数名(参数):
result = []
for i in range(开始, 结束):
if 条件:
result.append(i)
return result
这个结构特别常用。
比如找 1~100 的偶数:
def even_list():
result = []
for i in range(1, 101):
if i % 2 == 0:
result.append(i)
return result
print(even_list())
20. 现在先重点记这些
if / elif / else
for / while / break / continue
def / return
and / or / not / in
range()
print() / len() / int() / str()
append() / index() / remove() / pop() / sort()
split() / strip() / replace() / find()
open() / read() / write()
import random
这些熟了,学校 Python 基础作业基本都能写。