Python 极简完整教程(全知识点+纯用法)
Python 极简完整教程(全知识点+纯用法)
说明:全文无冗余描述,每项只写:作用 + 标准代码写法,可直接复制运行。覆盖Python入门到进阶全部核心知识点。
一、基础语法规则
1. 注释
作用:代码备注,不执行
# 单行注释
"""
多行注释
多行注释
"""
'''
多行注释
多行注释
'''2. 语句规则
作用:代码书写规范
- Python 禁止随意缩进,缩进代表代码块(4个空格/1个Tab)
- 大小写敏感:a 和 A 是两个变量
- 语句结尾无需分号(可加但不推荐)
- 标识符:字母/下划线开头,后跟字母、数字、下划线,不能用关键字
3. 打印输出
作用:控制台打印内容
print("Hello Python")
print(123, True, None)
# 换行/不换行
print("默认换行")
print("不换行", end="")二、六大核心数据类型
作用:存储各类数据,type()查看数据类型
# 1. None 空值
a = None
# 2. bool 布尔
b = True
c = False
# 3. 数字类型(int整数 / float小数 / complex复数)
d = 100 # int
e = 3.14 # float
f = 1+2j # complex
# 4. str 字符串
str1 = "双引号"
str2 = '单引号'
str3 = """
多行
字符串
"""
# 5. 序列/容器类型
list1 = [1,2,3] # 列表
tuple1 = (1,2,3) # 元组
dict1 = {"name":"py"}# 字典
set1 = {1,2,3} # 集合
# 查看类型
print(type(a))
print(type(str1))三、变量与赋值
作用:存储数据,Python变量无声明关键字,动态类型
# 单个赋值
num = 100
# 多变量赋值
a, b, c = 1, 2, 3
# 批量同值赋值
x = y = z = 666
# 变量交换(无需中间变量)
m, n = 10, 20
m, n = n, m
# 动态类型:可随意变更变量类型
var = 123
var = "字符串"四、运算符
1. 算术运算符
a = 10
b = 3
print(a + b) # 加
print(a - b) # 减
print(a * b) # 乘
print(a / b) # 浮点除
print(a // b) # 整除(向下取整)
print(a % b) # 取余
print(a ** b) # 幂运算
print(-a) # 负号2. 关系运算符
返回 True/False
print(10 == 10) # 等于
print(10 != 3) # 不等于
print(10 > 3) # 大于
print(10 < 3) # 小于
print(10 >= 3) # 大于等于
print(10 <= 3) # 小于等于3. 逻辑运算符
print(True and False) # 与
print(True or False) # 或
print(not True) # 非
# 短路赋值技巧
n = None
res = n or 100 # 空值则取默认值1004. 成员/身份运算符
# 成员运算符 in / not in
lst = [1,2,3]
print(1 in lst)
print(4 not in lst)
# 身份运算符 is / is not(判断内存地址)
a = [1,2]
b = [1,2]
print(a is b)
print(a == b)五、流程控制
1. if 条件判断
# 单分支
a = 10
if a > 5:
print("大于5")
# 双分支
if a > 20:
print("大")
else:
print("小")
# 多分支
if a < 5:
print("小")
elif a < 15:
print("中")
else:
print("大")
# 三元表达式(极简判断)
res = "是" if a > 5 else "否"2. for 循环
# 基础数值循环
for i in range(1, 6): # 1-5,左闭右开
print(i)
# 带步长循环
for i in range(1, 10, 2):
print(i)
# 遍历字符串/列表
for char in "python":
print(char)
for item in [11,22,33]:
print(item)3. while 循环
i = 1
while i <= 3:
print(i)
i += 1
# 无限循环
# while True:
# print("循环")4. 循环跳转
# break 跳出整个循环
for i in range(1,10):
if i == 3:
break
print(i)
# continue 跳出本次循环,继续下一次
for i in range(1,10):
if i == 3:
continue
print(i)六、函数(核心)
作用:封装代码、复用逻辑、简化代码
1. 基础函数
# 定义
def add(a, b):
return a + b
# 调用
print(add(2, 3))2. 参数类型
# 默认参数
def func1(a, b=10):
return a + b
# 关键字参数
func1(a=5, b=20)
# 可变位置参数 *args(接收元组)
def func2(*args):
print(args)
func2(1,2,3)
# 可变关键字参数 **kwargs(接收字典)
def func3(**kwargs):
print(kwargs)
func3(name="py", age=20)3. 多返回值
def get_pos():
return 10, 20
x, y = get_pos()
print(x, y)4. 匿名函数 lambda
# 单行极简函数
f = lambda a,b: a * b
print(f(2,5))七、四大容器精讲
1. 列表 list(有序、可变、可重复)
# 定义
lst = [1,2,3,"py"]
# 增删改查
lst.append(4) # 尾部添加
lst.insert(1, 99) # 指定位置插入
lst.pop() # 删除末尾
lst.remove(99) # 指定元素删除
lst[0] = 100 # 修改元素
print(lst[0]) # 索引取值
# 切片
print(lst[1:3]) # 1-2位
print(lst[::-1]) # 反转列表
# 常用方法
print(len(lst)) # 长度
lst.sort() # 排序
lst.reverse() # 反转2. 元组 tuple(有序、不可变、可重复)
# 定义
tup = (1,2,3)
tup2 = (1,) # 单个元素必须加逗号
# 查(无修改删除方法)
print(tup[0])
print(len(tup))3. 字典 dict(无序、可变、键唯一)
# 定义
d = {"name":"python", "age":20}
# 增改查
print(d["name"]) # 取值
print(d.get("sex", "未知")) # 安全取值
d["version"] = 3.10 # 新增键值对
d["age"] = 21 # 修改值
# 删除
del d["version"]
# 遍历
print(d.keys()) # 所有键
print(d.values()) # 所有值
print(d.items()) # 所有键值对4. 集合 set(无序、可变、元素唯一)
# 定义(自动去重)
s = {1,2,2,3}
# 增删
s.add(4)
s.remove(3)
# 集合运算
a = {1,2,3}
b = {3,4,5}
print(a & b) # 交集
print(a | b) # 并集
print(a - b) # 差集八、字符串常用操作
s = "PythonStudy"
print(len(s)) # 字符串长度
print(s.upper()) # 转大写
print(s.lower()) # 转小写
print(s.strip()) # 去除首尾空格
print(s.find("Py")) # 查找下标
print(s.replace("Py","Go")) # 替换
print(s.split("t")) # 分割成列表
print(s[0:3]) # 切片截取
# 字符串格式化
name = "python"
print(f"语言:{name}") # f-string(推荐)
print("语言:%s" % name)九、迭代遍历
# 遍历列表(带下标)
lst = [11,22,33]
for idx, val in enumerate(lst):
print(idx, val)
# 遍历字典
d = {"a":1, "b":2}
for k, v in d.items():
print(k, v)十、变量作用域
# 全局变量
num = 10
def test():
global num # 声明使用全局变量
num = 20
print(num)
test()
print(num)
# 局部变量:仅函数内部生效
def func():
a = 100
print(a)
# print(a) 外部无法访问十一、异常处理
作用:捕获错误,防止程序崩溃
try:
# 可能报错的代码
print(1 / 0)
except ZeroDivisionError:
print("除数不能为0")
except Exception as e:
print("未知错误:", e)
else:
print("无异常时执行")
finally:
print("无论是否报错都执行")十二、模块与包
作用:导入内置/第三方/自定义模块,复用代码
# 导入完整模块
import math
print(math.pi)
print(math.sqrt(4))
# 导入指定功能
from math import pow
print(pow(2,3))
# 别名导入
import math as m
# 导入自定义模块
import test十三、文件IO操作
# 写入文件(w覆盖 / a追加)
with open("test.txt", "w", encoding="utf-8") as f:
f.write("测试写入内容")
# 读取文件
with open("test.txt", "r", encoding="utf-8") as f:
text = f.read()
print(text)
# 按行读取
with open("test.txt", "r", encoding="utf-8") as f:
for line in f.readlines():
print(line.strip())十四、面向对象(Python核心)
作用:封装、继承、多态,模块化编程
1. 基础类与实例
# 定义类
class Person:
# 构造方法(初始化)
def __init__(self, name, age):
self.name = name
self.age = age
# 成员方法
def say(self):
print(f"姓名:{self.name},年龄:{self.age}")
# 实例化对象
p = Person("小明", 18)
p.say()2. 类继承
# 子类继承父类
class Student(Person):
def __init__(self, name, age, stu_id):
super().__init__(name, age) # 调用父类构造
self.stu_id = stu_id
def study(self):
print(f"{self.name}正在学习")
s = Student("小红", 16, "001")
s.say()
s.study()十五、常用高阶语法
1. 列表推导式(极简生成列表)
# 生成1-10偶数列表
lst = [x for x in range(1,11) if x % 2 == 0]
print(lst)2. map/filter 高阶函数
# map:批量处理元素
lst = [1,2,3]
res = list(map(lambda x:x*2, lst))
print(res)
# filter:过滤元素
res2 = list(filter(lambda x:x>1, lst))
print(res2)十六、迭代器与生成器
# 生成器(节省内存)
def gen():
yield 1
yield 2
yield 3
g = gen()
print(next(g))
print(next(g))十七、多线程/多进程(简易用法)
# 简易多线程
import threading
import time
def task():
print("线程执行")
time.sleep(1)
t = threading.Thread(target=task)
t.start()
t.join()版权属于:Joyber
本文链接:https://blog.qqvbc.com/default/1530.html
转载时须注明出处及本声明