day-024-pip与第三方库

📅 2026/7/11 2:51:58 👁️ 阅读次数 📝 编程学习
day-024-pip与第三方库

Day 24:pip 与第三方库——打开 Python 的宝藏仓库

标准库虽然强大,但真正让 Python 统治数据科学和 AI 领域的,是十万多个第三方库。今天学如何安装、管理它们。


一、pip——Python 的包管理器

pip是 Python 的官方包管理工具(Python 3.4+ 自带)。用它可以一键安装任何第三方库。

# 基本命令pipinstall包名# 安装pipinstall包名==版本号# 安装指定版本pipinstall'包名>=2.0'# 安装不低于某版本pipinstall--upgrade包名# 升级到最新版pip uninstall 包名# 卸载pip list# 查看已安装的所有包pip show 包名# 查看某个包的详细信息

实战:安装常用的数据科学库

pipinstallnumpy# 科学计算pipinstallpandas# 数据处理pipinstallmatplotlib# 数据可视化pipinstallrequests# HTTP 请求pipinstallpillow# 图片处理

如果你想一次性安装多个,可以把它们写在requirements.txt里:

# requirements.txt numpy==1.26.0 pandas>=2.0 matplotlib requests

然后一行搞定:

pipinstall-rrequirements.txt

二、虚拟环境——每个项目独立的"隔离箱"

不同项目可能需要同一个库的不同版本。虚拟环境让每个项目拥有独立的依赖。

# 创建虚拟环境python-mvenv myenv# 激活(Windows)myenv\Scripts\activate# 激活(Mac/Linux)sourcemyenv/bin/activate# 此时终端前面出现 (myenv),说明已激活# 之后 pip install 只对当前虚拟环境生效# 退出虚拟环境deactivate

为什么一定要用虚拟环境?

  • 避免不同项目的依赖冲突
  • 方便迁移和部署(导出 requirements.txt)
  • 不污染系统 Python 环境

三、requests——HTTP 请求库

第三方库的王者,爬取网页、调用 API 必备:

importrequests# GET 请求response=requests.get("https://www.baidu.com")print(response.status_code)# 200 表示成功# 带参数的请求params={"q":"Python","page":1}response=requests.get("https://api.example.com/search",params=params)# POST 请求data={"username":"小明","password":"secret"}response=requests.post("https://api.example.com/login",json=data)# 获取 JSON 响应data=response.json()print(data)# 设置超时(避免永远等待)response=requests.get("https://slow-api.com",timeout=5)# 下载图片img_response=requests.get("https://example.com/photo.jpg")withopen("photo.jpg","wb")asf:f.write(img_response.content)# content 是二进制数据

四、导入库与命名约定

# 社区约定俗成的别名importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltimportseabornassnsfromPILimportImageimportrequests# 之后看到这些缩写要知道什么意思arr=np.array([1,2,3])df=pd.DataFrame({"A":[1,2,3]})plt.plot([1,2,3],[4,5,6])

五、常用第三方库一览

领域库名用途
科学计算numpy多维数组与数值运算
数据处理pandas表格数据处理
可视化matplotlib / seaborn图表绘制
深度学习torch / tensorflow神经网络框架
HTTPrequestsHTTP 请求
爬虫scrapy / beautifulsoup4网页抓取解析
Web 开发flask / django / fastapi网站后端框架
图片处理pillow图片读写处理
办公自动化openpyxl / python-docxExcel / Word 操作
测试pytest自动化测试框架

今天先不深入学习每个库,先知道 pip 怎么用,后面 NumPy、Pandas 会专门花大量时间学。


六、实战:写一个天气查询脚本

"""用 requests 调用免费天气 API"""importrequestsdefget_weather(city):"""获取指定城市的天气信息(模拟)"""# 实际开发中,你需要找一个真实的天气 APIurl="https://httpbin.org/get"# 这是一个测试用的 APIparams={"city":city}try:response=requests.get(url,params=params,timeout=10)response.raise_for_status()# 状态码不是 200 就抛异常data=response.json()print(f"请求{city}的天气数据成功!")print(f"返回数据:{data}")exceptrequests.ConnectionError:print("网络连接失败!请检查网络")exceptrequests.Timeout:print("请求超时,请稍后重试")exceptrequests.RequestExceptionase:print(f"请求出错:{e}")if__name__=="__main__":get_weather("北京")

七、今日学习总结

学习内容掌握情况一句话要点
pip install✅ 重点pip install 包名安装第三方库
requirements.txt✅ 了解记录依赖,方便复现环境
虚拟环境 venv✅ 重点python -m venv myenv创建独立环境
requests GET/POST✅ 重点发 HTTP 请求,获取数据
常见别名约定✅ 记住np,pd,plt
第三方库生态✅ 了解numpy/pandas/matplotlib 是三件套

今日踩坑记录

  1. pip 不是内部命令:安装 Python 时没勾选 “Add to PATH”,或者虚拟环境没激活。
  2. 国内 pip 下载慢:可以换清华源pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名
  3. requests 请求卡住不返回:就是因为没设timeout参数。永远加timeout

八、明天学什么?

环境准备全部就绪。明天正式开始第二阶段——NumPy 入门,学习多维数组(ndarray)的创建和基本操作。这是整个数据科学和 AI 领域的地基。


pip 打开了 Python 生态的大门。14万+个库等着你——你不需要全部学会,只需要知道"一定有现成的轮子"。

第24天,打卡完成。明天见!


本系列是个人学习笔记,如有错误欢迎在评论区指正交流。