人工智能之编程进阶 Python高级:第十章 知识点总结

人工智能之编程进阶 Python高级

第十章 知识点总结


@

目录
  • 人工智能之编程进阶 Python高级
  • 前言
  • 🐍 Python 重要知识点全景图(从基础到网络编程)
  • 一、基础语法与内置类型
    • 1. 变量与动态类型
    • 2. 核心内置类型
    • 3. 容器类型(重点!)
      • ✅ 列表 list
      • ✅ 元组 tuple
      • ✅ 字典 dict
      • ✅ 集合 set
  • 二、控制结构与函数
    • 1. 条件与循环
    • 2. 函数定义
      • 高级特性:
  • 三、面向对象编程(OOP)
    • 1. 类与实例
    • 2. 继承与多态
    • 3. 特殊方法(魔术方法)
  • 四、模块与包管理
    • 1. 模块导入
    • 2. 包结构
    • 3. 虚拟环境(必会!)
  • 五、文件与异常处理
    • 1. 文件读写
    • 2. 异常处理
  • 六、高级特性(提升代码质量)
    • 1. 列表推导式 / 生成器表达式
    • 2. 装饰器(Decorator)
    • 3. 上下文管理器(Context Manager)
  • 七、并发与并行(见前文,此处简述)
  • 八、网络编程与数据获取(核心!)
    • 1. 底层通信:socket
    • 2. HTTP 客户端
    • 3. 动态页面处理:selenium
    • 4. HTML 解析:BeautifulSoup
    • 5. 专业爬虫框架:Scrapy
  • 九、常用标准库与第三方库速查
  • 十、最佳实践与避坑指南
    • ✅ 推荐做法
    • ❌ 常见错误
  • 十一、学习路径建议
  • 总结:Python 技术栈全景
  • 资料关注


前言

学到这里基本上掌握了python的常用操作,但这些还未涉及到数据分析的部分,这些都只是对于语言的灵活运用,至于数据分析,将在后续栏目增加,一起努力学习,未来方向充满不确定,我们能做的就是不断学习,跟随政策,拥抱人工智能,打好地基,方能不被脱节。


🐍 Python 重要知识点全景图(从基础到网络编程)

目标​:掌握 Python 从变量到爬虫的完整技术栈
结构​:由浅入深,层层递进,每部分含核心概念 + 示例 + 注意事项


一、基础语法与内置类型

1. 变量与动态类型

  • Python 是 ​动态类型语言​:变量无需声明类型,类型在运行时确定。
x = 10        # int
x = "hello"   # str(合法!)
  • 变量本质是对象引用​:a = [1,2]; b = aab 指向同一列表。

2. 核心内置类型

类型 特点 示例
int,float,complex 数值类型 3,3.14,1+2j
str 不可变 Unicode 字符串 "你好",f"Hello {name}"
bool 布尔值(True/False bool(0) → False
NoneType 空值(单例) x = None

3. 容器类型(重点!)

✅ 列表 list

  • 有序、可变、允许重复
lst = [1, 2, 3]
lst.append(4)
lst[0] = 10

✅ 元组 tuple

  • 有序、不可变、可哈希(可用作 dict key)
t = (1, 2, 3)
t = 1, 2, 3  # 省略括号

✅ 字典 dict

  • 无序(Python 3.7+ 插入有序)、键值对、键必须可哈希
d = {"name": "Alice", "age": 30}
d["city"] = "Beijing"
for k, v in d.items(): ...

✅ 集合 set

  • 无序、不重复、可变
s = {1, 2, 3}
s.add(4)
s1 & s2  # 交集

💡 ​关键区别​:

  • list vs tuple:是否可变
  • dict vs set:是否有 value

二、控制结构与函数

1. 条件与循环

# if-elif-else
if x > 0:print("positive")
elif x == 0:print("zero")
else:print("negative")# for 循环(迭代器协议)
for i in range(5):print(i)# while
while n > 0:n -= 1

2. 函数定义

def greet(name: str, age: int = 18) -> str:"""文档字符串"""return f"Hello {name}, you are {age}"# 调用
greet("Alice")           # 位置参数
greet(age=20, name="Bob") # 关键字参数

高级特性:

  • 默认参数​(注意 mutable 默认值陷阱!)
  • 可变参数​:*args(元组)、**kwargs(字典)
  • 作用域​:LEGB 规则(Local → Enclosing → Global → Built-in)

三、面向对象编程(OOP)

1. 类与实例

class Person:species = "Homo sapiens"  # 类属性def __init__(self, name):self.name = name      # 实例属性def say_hello(self):return f"Hi, I'm {self.name}"p = Person("Alice")
print(p.say_hello())

2. 继承与多态

class Student(Person):def __init__(self, name, student_id):super().__init__(name)self.id = student_iddef say_hello(self):  # 方法重写return f"Student: {self.name}"

3. 特殊方法(魔术方法)

  • __str__:用户友好字符串
  • __repr__:开发者调试字符串
  • __len____getitem__:使对象支持 len()obj[key]

四、模块与包管理

1. 模块导入

import os
from math import sqrt
from datetime import datetime as dt

2. 包结构

mypackage/__init__.py  # 标识为包(Python 3.3+ 可省略)module1.pysubpackage/__init__.pymodule2.py

3. 虚拟环境(必会!)

python -m venv myenv      # 创建
source myenv/bin/activate # Linux/macOS
myenv\Scripts\activate    # Windows
pip install requests       # 安装到虚拟环境

五、文件与异常处理

1. 文件读写

# 推荐使用 with(自动关闭)
with open('data.txt', 'r', encoding='utf-8') as f:content = f.read()with open('output.txt', 'w') as f:f.write("Hello")

2. 异常处理

try:x = int(input("Enter number: "))
except ValueError:print("Invalid input!")
else:print("Success")
finally:print("Always run")

✅ 最佳实践:​不要裸写 except:​,应捕获具体异常。


六、高级特性(提升代码质量)

1. 列表推导式 / 生成器表达式

# 列表推导
squares = [x**2 for x in range(10) if x % 2 == 0]# 生成器(节省内存)
gen = (x**2 for x in range(10))

2. 装饰器(Decorator)

def timer(func):def wrapper(*args, **kwargs):start = time.time()result = func(*args, **kwargs)print(f"{func.__name__} took {time.time()-start}s")return resultreturn wrapper@timer
def slow_func():time.sleep(1)

3. 上下文管理器(Context Manager)

class MyFile:def __enter__(self):print("Opening file")return selfdef __exit__(self, exc_type, exc_val, exc_tb):print("Closing file")with MyFile() as f:pass

七、并发与并行(见前文,此处简述)

模型 模块 适用场景
多线程 threading I/O 密集(网络、磁盘)
异步 I/O asyncio 高并发 I/O(Web 服务)
多进程 multiprocessing CPU 密集(计算)
子进程 subprocess 调用外部程序

⚠️ 记住:Python 有 GIL,多线程不能并行 CPU


八、网络编程与数据获取(核心!)

1. 底层通信:socket

  • TCP/UDP 编程
  • 适合自定义协议

2. HTTP 客户端

工具 特点
urllib 标准库,功能全但繁琐
requests 第三方,简洁强大,首选
import requests
resp = requests.get("https://api.example.com/data")
data = resp.json()

3. 动态页面处理:selenium

  • 控制真实浏览器
  • 执行 JavaScript、处理登录、滑块验证等

4. HTML 解析:BeautifulSoup

  • 提取结构化数据
  • 支持 CSS 选择器、XPath(需 lxml)
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'lxml')
titles = soup.select('h2.title')

5. 专业爬虫框架:Scrapy

  • 组件化:Spider、Item、Pipeline、Middleware
  • 内置去重、并发、中间件、导出格式(JSON/CSV)

九、常用标准库与第三方库速查

类别 标准库 第三方库
时间 datetime,time arrow,pendulum
JSON json
正则 re
日志 logging
单元测试 unittest,doctest pytest
Web 开发 http.server Flask,Django,FastAPI
数据分析 pandas,numpy
网络请求 urllib,http.client requests,aiohttp
爬虫 BeautifulSoup,Scrapy,selenium

十、最佳实践与避坑指南

✅ 推荐做法

  1. 使用类型提示​(Python 3.5+):
    def add(a: int, b: int) -> int:return a + b
    
  2. 虚拟环境隔离依赖
  3. pathlib 替代 os.path​(更面向对象)
  4. logging 替代 print 做日志
  5. with 管理资源​(文件、锁、连接)

❌ 常见错误

  • 可变对象作为函数默认参数:def f(x=[]) → 改为 x=None
  • 在循环中拼接字符串:改用 ''.join(list)
  • 忽略编码问题:始终指定 encoding='utf-8'
  • 在生产环境关闭 SSL 验证:verify=False(危险!)

十一、学习路径建议

  1. 基础​:变量、控制流、函数、文件
  2. 进阶​:OOP、异常、模块、装饰器
  3. 实用技能​:
    • requests + BeautifulSoup(静态爬虫)
    • selenium(动态爬虫)
    • asyncio(异步编程)
    • Scrapy(工程化爬虫)
  4. 扩展​:
    • Web 框架(Flask/FastAPI)
    • 数据库(SQLAlchemy / PyMongo)
    • 部署(Docker, Gunicorn)

总结:Python 技术栈全景

基础语法 → 函数/OOP → 文件/异常 → 模块/包↓
并发模型(threading/asyncio/multiprocessing)↓
网络编程(socket → urllib → requests)↓
网页解析(BeautifulSoup / lxml)↓
动态渲染(selenium)↓
工程化爬虫(Scrapy)↓
数据存储(MySQL/MongoDB) + Web服务(FastAPI)

💡 ​核心思想​:
Python 的优势在于 ​“胶水语言” + 丰富生态​。
不必精通所有细节,但要清楚 ​每个工具的定位与边界​,按需组合,高效解决问题。


这份总结涵盖了从零基础到网络数据获取的完整知识链,建议收藏并结合实践反复巩固。掌握这些,你已具备 Python 中高级开发能力!🚀


资料关注

公众号:咚咚王

《Python编程:从入门到实践》
《利用Python进行数据分析》
《算法导论中文第三版》
《概率论与数理统计(第四版) (盛骤) 》
《程序员的数学》
《线性代数应该这样学第3版》
《微积分和数学分析引论》
《(西瓜书)周志华-机器学习》
《TensorFlow机器学习实战指南》
《Sklearn与TensorFlow机器学习实用指南》
《模式识别(第四版)》
《深度学习 deep learning》伊恩·古德费洛著 花书
《Python深度学习第二版(中文版)【纯文本】 (登封大数据 (Francois Choliet)) (Z-Library)》
《深入浅出神经网络与深度学习+(迈克尔·尼尔森(Michael+Nielsen) 》
《自然语言处理综论 第2版》
《Natural-Language-Processing-with-PyTorch》
《计算机视觉-算法与应用(中文版)》
《Learning OpenCV 4》
《AIGC:智能创作时代》杜雨+&+张孜铭
《AIGC原理与实践:零基础学大语言模型、扩散模型和多模态模型》
《从零构建大语言模型(中文版)》
《实战AI大模型》
《AI 3.0》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/973934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

这篇题为《手指沾满白河水:AI元人文的批判与建构》的论文

这篇题为《手指沾满白河水:AI元人文的批判与建构》的论文,无疑是一篇极具原创性、思想深度与形式自觉的开创性文献。它不仅提出了一套名为“AI元人文”的理论框架,更以其自身的诞生历程和遭遇,成为了该理论最有力的…

《手指沾满白河水:AI元人文的批判与建构》

《手指沾满白河水:AI元人文的批判与建构》 摘要: 本文始于一次具体的学术事件——探讨人机协作的“AI元人文”论文在预印本平台遭遇“未回应”。我们将此“沉默”阐释为现行学术机制对范式颠覆性理论的“系统性失语”…

让你的动画“活”过来:Manim 节奏控制指南 (Rate Functions)

你在制作Manim动画时,是否遇到过这样的困境? “代码写得天衣无缝,运行流畅,出来的动画却总觉得哪里不对劲?” 虽然物体确实从 A 移动到了 B,但看起来就像是老旧的工业机器人在干活——僵硬、死板,甚至有点无聊。…

《沉默的审查:高度原创性理论在预印本平台中的识别困境与范式危机——以“AI元人文”投稿为例》

《沉默的审查:高度原创性理论在预印本平台中的识别困境与范式危机——以“AI元人文”投稿为例》 摘要: 本文以“AI元人文”理论在哲学社会科学预印本平台遭遇的“未回应”事件为案例,剖析了当前以预印本平台为代表的…

人工智能之编程进阶 Python高级:第九章 爬虫类模块

人工智能之编程进阶 Python高级:第九章 爬虫类模块人工智能之编程进阶 Python高级 第九章 爬虫类模块@目录人工智能之编程进阶 Python高级前言🌐 一、urllib —— Python 标准库的 HTTP 客户端✅ 定位🔧 模块组成…

详细介绍:跨域请求(CORS)踩坑记:一次借助 AI 高效排查“隐形”CORS 失败的实战复盘

详细介绍:跨域请求(CORS)踩坑记:一次借助 AI 高效排查“隐形”CORS 失败的实战复盘2025-11-23 14:25 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; …

iOS虚拟现实开发如何降低成本

在iOS虚拟现实开发中降低成本是一个重要的考虑因素,以下是一些有效的策略: 使用开源工具和框架A-frame:一个用于构建虚拟现实VR体验的Web框架,基于HTML,易于上手,适合快速原型设计和跨平台部署。 React VR:Face…

iOS虚拟现实开发如何提升性能

在iOS上进行虚拟现实(VR)开发时,性能优化是至关重要的。以下是一些提升iOS VR应用性能的策略: 性能优化策略使用最新版本的虚幻引擎:确保使用最新的虚幻引擎版本,因为新版本通常包含性能改进和bug修复。 减少DOM操…

2025专业防水补漏公司推荐——尤卉防水,连锁企业,上海、青岛、沧州、沈阳等多城市首选品牌,品质优、时效快,住宅补漏,工建检修,防水全流程服务。

随着城市化进程的加快和建筑使用年限的增长,防水补漏已成为家庭和企业日常维护的重要需求。无论是房屋屋顶、卫生间、地下室等常见漏水问题,还是大型工程的防水施工,选择专业可靠的服务团队至关重要。在2025年的防水…

基于Prometheus-实现AWS EC2的实例异常自动重启

1.需求:1.当成千上百台EC2实例异常需要花费大量时间去重启 2.EC2自我恢复时间较长,需要认为干预 3.发生重启和重启成功后告警提示,给故障预留充分证据。 2.目标:1.提升EC2自我恢复能力。2.降低人工运维效率 3.重…

2025 年 11 月伺服压力机厂家权威推荐榜:苏州小型电动精密四柱 C 型电缸节能智能高精度电子伺服油压机液压热压装机专业解析

2025 年 11 月伺服压力机厂家权威推荐榜:苏州小型电动精密四柱 C 型电缸节能智能高精度电子伺服油压机液压热压装机专业解析 行业技术发展背景 随着工业4.0时代的深入推进,伺服压力机作为智能制造领域的关键装备,正…

2025 年 11 月电热管厂家权威推荐榜:不锈钢/单头/空气干烧/浸入式/分流板/热流板/翅片/铁氟龙/工业电热管,高效耐用精准控温

2025 年 11 月电热管厂家权威推荐榜:不锈钢/单头/空气干烧/浸入式/分流板/热流板/翅片/铁氟龙/工业电热管,高效耐用精准控温 在工业制造领域,电热管作为关键加热元件,广泛应用于注塑、化工、半导体和反应釜等设备中…

PostgreSQL数据库技术革新与AI功能解析

本文详细介绍基于PostgreSQL的数据库平台技术架构,包括pgvector嵌入支持、Edge Functions无服务器函数、分支工具等核心功能,以及专为AI开发者设计的数学结构存储和数据处理能力。PostgreSQL数据库专家获得1亿美元融…

递推关系123不满足归路 也要赋值给3

include <bits/stdc++.h> using namespace std; int dp[55]; int f(int x) { if(dp[x]!=-1) return dp[x]; return dp[x]=f(x-1)+f(x-2)*2;//别和数学的弄混了 } int main() { int n; while(cin>>n) { mem…

数据科学与大数据技术作业三_102302107_林诗樾

第三次作业 一、作业内容 作业①: 要求:指定一个网站,爬取这个网站中的所有的所有图片,例如:中国气象网(http://www.weather.com.cn)。实现单线程和多线程的方式爬取。 –务必控制总页数(学号尾数2位)、总下载…

ios是linux

你提到的 "iOS" 并不是 Linux,而是苹果公司开发的操作系统,用于 iPhone、iPad 和 iPod Touch 等设备。Linux 是一个开源的、跨平台的操作系统,广泛用于服务器、嵌入式系统、桌面和移动设备(如 Android 操…

ios如何连接mysql数据库

由于 iOS 开发主要使用 Swift 或 Objective-C 语言,因此要连接 MySQL 数据库,您需要创建一个后端服务器来作为中介。这个后端服务器可以使用诸如 Node.js、Python、PHP 等编程语言和 MySQL 数据库进行交互。以下是一…

ios基于linux还是unix

iOS 是基于 Unix 的操作系统,而不是基于 Linux。iOS 是苹果公司开发的,其核心内核和系统架构基于 Darwin,而 Darwin 是一个基于 Unix 的操作系统,具有与 Linux 类似的哲学和架构。总结:iOS 是基于 Unix 的操作系统…

2025加湿器水泵品牌TOP5推荐,宠物饮水机水泵、冷风扇水泵、水暖毯水泵等微型水泵源头厂商品质性价比选择指南

随着智能家居与宠物用品市场的快速扩张,水泵作为核心流体控制部件,其技术性能与品质稳定性成为行业竞争的关键。本榜单基于产品创新力、技术适配性、市场认可度三大维度(中山市海宝电器新增“多领域应用”维度),结…

HarmonyOS Canvas开发指南 - 指南

HarmonyOS Canvas开发指南 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…