网站弹广告是什么样做的,wordpress前台发表文章,常州中小企业网站制作,中国域名有哪些一、简介
1.1 Python 特性
解释型语言#xff1a;代码无需编译可直接运行#xff0c;适合快速开发。
动态类型#xff1a;变量类型在运行时确定#xff08;如x1后xstr仍合法#xff09;。
面向对象#xff1a;支持类、对象、继承等特性#xff0c;代码可…
一、简介
1.1 Python 特性
解释型语言代码无需编译可直接运行适合快速开发。
动态类型变量类型在运行时确定如x1后xstr仍合法。
面向对象支持类、对象、继承等特性代码可复用性强。
语法简洁通过缩进区分代码块减少括号等冗余符号。
1.2 应用场景
数据分析Pandas、Numpy 等库处理结构化数据。
人工智能TensorFlow、PyTorch 构建机器学习模型。
Web 开发Django、Flask 框架开发网站。
自动化脚本批量处理文件、系统运维自动化。
二、Python 基础语法
2.1 字面量与数据类型
核心关联点可变与不可变类型 类型 是否可变 存储特点 典型应用 整数int 不可变 直接存储数值 计数、索引 浮点数float 不可变 存储小数存在精度误差如0.10.2≠0.3 科学计算 字符串str 不可变 字符序列支持切片操作 文本处理 列表list 可变 有序元素集合可动态增删改 存储同类数据序列 元组tuple 不可变 有序元素集合不可修改 保护数据不被意外修改 字典dict 可变 键值对映射键需不可变如 str 快速查询类似通讯录 集合set 可变 无序不重复元素支持集合运算 去重、交集并集计算
易混淆点
字符串、元组虽不可变但可通过拼接生成新对象如s a; s b实际生成新字符串。
字典的键必须为不可变类型如dict[{1:2}]会报错因列表可变。
2.2 运算符优先级由高到低
示例对比
3 4 * 2 → 先算4*28再算3811乘优先于加。
3 * 2 ** 2 → 先算2**24再算3*412指数优先于乘法。
2.3 字符串操作核心方法
易混淆方法对比 方法 作用 是否修改原字符串 示例 split() 按分隔符分割成列表 否 a,b,c.split(,) → [a,b,c] join() 用指定字符连接列表 否 ,.join([a,b,c]) → a,b,c strip() 去除首尾指定字符默认空格 否 abc .strip() → abc replace() 替换子串 否 abc.replace(a,x) → xbc upper()/lower() 转大小写 否 AbC.upper() → ABC
三、流程控制判断与循环
3.1 if 基本格式
# 示例代码
age 20
if age 18:print(成年了)print(可以投票了) if-elif-else 语句
# 示例代码
height int(input(请输入身高(cm): ))
vip_level int(input(请输入VIP等级))if height 120:print(免费游玩)
elif vip_level 3:print(VIP免费)
else:print(需要购票)
3.2 循环结构对比 循环类型 适用场景 核心特点 跳出方式 for 循环 已知次数的遍历如列表、字符串 按元素遍历无需手动控制计数器 break/continue while 循环 未知次数的循环如用户输入验证 条件为真时执行需手动更新条件变量 break/continue
典型案例
for 循环遍历列表求最大值 # 示例代码
name python
for char in name:print(char) while 循环猜数字游戏
# 示例代码
i 0
while i 5:print(i)i 1
四、函数与数据容器
4.1 函数参数传递机制
可变与不可变参数对比 参数类型 传递方式 修改影响 示例 不可变类型int/str/tuple 值传递 函数内修改不影响外部变量 def f(x): x2; a1; f(a); print(a) → 1 可变类型list/dict/set 引用传递 函数内修改会影响外部变量 def f(l): l.append(0); a[1]; f(a); print(a) → [1,0]
4.2 数据容器核心操作对比
列表、元组、字典、集合常用方法 操作 列表list 元组tuple 字典dict 集合set 创建 [1,2] (1,2) 或 1,2 {a:1} {1,2} 或 set([1,2]) 新增元素 append()/insert() 不可新增报错 dict[key]value add()/update() 删除元素 pop()/remove() 不可删除报错 pop(key) remove()/discard()/pop() 访问元素 lst[0] tup[0] dict[key] 或 get(key) 不可直接访问无序 遍历 for x in lst for x in tup for k in dict 或 for k,v in dict.items() for x in set 常用内置函数 len()/max()/min()/sorted() len()/max()/min()/sorted() len()/keys()/values()/items() len()/union()/intersection()
数据容器对比 类型 元素类型 有序 可变 重复元素 列表List 任意 是 是 支持 元组Tuple 任意 是 否 支持 字典Dict Key 必须不可变Value 任意 否 是 Key 不支持重复 集合Set 任意 否 是 不支持 字符串Str 字符 是 否 支持
五、文件操作与异常处理
5.1 文件操作三模式对比 模式 读写权限 文件不存在时 典型应用 r 只读 报错 读取配置文件 w 写入覆盖原内容 创建新文件 重新生成日志文件 a 追加写入 创建新文件 追加日志记录
安全写法使用with open自动关闭文件 # 读取文件推荐with open(data.txt, r, encodingutf-8) as f:content f.read()# 写入文件推荐with open(output.txt, w, encodingutf-8) as f:f.write(Hello World)
5.2 异常处理流程
典型案例 try:num int(input(输入数字: ))result 10 / numexcept ValueError:print(请输入有效数字)except ZeroDivisionError:print(不能除以0)except Exception as e:print(f未知错误: {e})else:print(f计算结果: {result})finally:print(程序执行完毕)
六、模块与面向对象编程
6.1 模块导入方式对比 导入方式 语法 命名空间影响 适用场景 导入整个模块 import math math.sqrt(4) 避免命名冲突 导入指定功能 from math import sqrt sqrt(4) 简化代码书写 导入所有功能 from math import * 可能覆盖同名变量 快速原型开发 模块别名 import math as m m.sqrt(4) 长模块名简化
6.2 面向对象核心概念
封装、继承、多态对比 概念 定义 代码示例 封装 隐藏内部实现只暴露必要接口 class Person: __age18; def get_age(): return self.__age 继承 子类复用父类代码 class Student(Person): pass 多态 同一方法不同实现动态绑定 def func(obj): obj.sound(); dogDog(); birdBird(); func(dog); func(bird)