1. python电子书学习推荐 | 16本python书籍(附pdf版),看完少走一半弯路
1. 《流畅的Python》:由Python核心开发人员编写,深入讲解Python中的复杂概念,如迭代器、生成器、装饰器等,适合具备一定编程基础的读者。
2. 《Python编程:从入门到实践》:针对初学者,通过实际案例引导学习Python编程,涵盖Web应用程序开发、数据可视化等内容。
3. 《Python Cookbook》:为中高级程序员提供实用的代码示例和解决方案,涉及网络编程、并发编程、数据处理等多个方面。
4. 《Effective Python》:针对经验丰富的Python程序员,介绍高效、优雅的编码方式,包括生成器内存节省、属性管理等内容。
5. 《Python网络编程攻略》:介绍Python网络编程技术,如Socket编程、HTTP协议、SMTP协议等,适合深入学习网络编程的读者。
6. 《利用Python进行数据分析》:讲解Python数据分析工具,如NumPy、Pandas、Matplotlib等的使用方法,并展示实际案例。
7. 《Python基础教程》:学习Python基础知识的入门教材,内容详尽易懂,适合初学者。
8. 《Python高级编程》:介绍Python高级编程技术,包括元编程、多线程编程、异步编程等,适合深入学习的读者。
9. 《Head First Python》:适合初学者,通过图表和实例引导学习Python编程,并介绍Web应用程序开发、数据可视化等内容。
10. 《Python爬虫开发与项目实战》:介绍Python爬虫技术,包括HTTP协议、正则表达式、XPath Beautifusoup等,提供多个爬虫项目实战演示。
11. 《Python并发编程指南》:介绍Python并发编程技术,如多线程、多进程、协程等,并提供大量代码示例。
12. 《Automate the Boring Stuff with Python》:介绍如何使用Python自动化处理日常工作任务,包含文件操作、网页抓取、数据处理等方面。
13. 《Python for Data Analysis》:讲解如何使用Python进行数据分析,包括数据清洗、可视化、统计分析等。
14. 《Python网络编程》:介绍如何使用Python进行网络编程,包括TCP/IP协议、HTTP协议、Web框架等。
15. 《Flask Web开发实战》:介绍如何使用Flask框架进行Web开发,包括路由设计、模板渲染、数据库操作等。
全部资料已打包,有需要的读者可自行下载。
2. 值得收藏的Python第三方库
网络站点爬取
爬取网络站点的库Scrapy – 一个快速高级的屏幕爬取及网页采集框架。cola – 一个分布式爬虫框架。Demiurge – 基于PyQuery 的爬虫微型框架。feedparser – 通用 feed 解析器。Grab – 站点爬取框架。MechanicalSoup – 用于自动和网络站点交互的 Python 库。portia – Scrapy 可视化爬取。pyspider – 一个强大的爬虫系统。RoboBrowser – 一个简单的,Python 风格的库,用来浏览网站,而不需要一个独立安装的浏览器。
交互式解析器
交互式 Python 解析器。
IPython – 功能丰富的工具,非常有效的使用交互式 Python。
bpython- 界面丰富的 Python 解析器。
ptpython – 高搜毕腊级交互式Python解析器, 构建于python-prompt-toolkit 之上。
图像处理
用来操作图像的库.
pillow – Pillow 是一个更加易用版的 PIL。
hmap – 图像直方图映射。
imgSeek – 一个使用视觉相似性搜索一组图片集合的项目。
nude.py – 裸体检测。
pyBarcode – 不借助 PIL 库在 Python 程序中生成条形码。
pygram – 类似 Instagram 的图像滤镜。
python-qrcode – 一个纯 Python 实现的二维码生成器。
Quads – 基于四叉树的计算机艺术。
scikit-image – 一个用于(科学)图像处理的 Python 库。
thumbor – 一数蚂个小型图像服务,具有剪裁,尺寸重设和翻转功能。
wand – MagickWand的Python 绑定。MagickWand 是 ImageMagick的 C API 。
HTTP
使用HTTP的库。
requests – 人性化的HTTP请求库。
grequests – requests 库 + gevent ,用于异步 HTTP 请求.
httplib2 – 全面的 HTTP 客户端库。
treq – 类似 requests 的Python API 构建于 Twisted HTTP 客户端之上。
urllib3 – 一个具有线程安全连接池,支持文件 post,清晰友好的 HTTP 库。
数据库
Python实现的数据库。
pickleDB – 一个简单,轻量级键值储存数据库。
PipelineDB – 流式 SQL 数据库。
TinyDB – 一个微型的,面向文档型数据库。
ZODB – 一个 Python 原生对象数据库。一个键值和对象图数据库。
Web 框架
全栈 web 框架。
Django – Python 界最流行的 web 框架。
awesome-django系列
Flask – 一个 Python 微型框架。
https://github.com/humiaozuzu/awesome-flask系列
Pyramid – 一个小巧,快速,接地气的开源Python web 框架。
awesome-pyramid系列
Bottle – 一个快速小巧,轻量级的 WSGI 微型 web 框架。
CherryPy – 一个极简的 Python web 框架,服从 HTTP/1.1 协议且具有WSGI 线程池。
TurboGears – 一个可以扩展为全栈解决方案的微型框架。
web.py – 一个 Python 的 web 框架,既简单,又强大。
web2py – 一个全栈 web 框架和平台,专注于简单易用。
Tornado – 一个web 框架和异步网络库。
HTML处理世滑
处理 HTML和XML的库。
BeautifulSoup – 以 Python 风格的方式来对 HTML 或 XML 进行迭代,搜索和修改。
bleach – 一个基于白名单的 HTML 清理和文本链接库。
cssutils – 一个 Python 的 CSS 库。
html5lib – 一个兼容标准的 HTML 文档和片段解析及序列化库。
lxml – 一个非常快速,简单易用,功能齐全的库,用来处理 HTML 和 XML。
MarkupSafe – 为Python 实现 XML/HTML/XHTML 标记安全字符串。
pyquery – 一个解析 HTML 的库,类似 jQuery。
untangle – 将XML文档转换为Python对象,使其可以方便的访问。
xhtml2pdf – HTML/CSS 转 PDF 工具。
xmltodict – 像处理 JSON 一样处理 XML。
游戏开发
超赞的游戏开发库。
Cocos2d – cocos2d 是一个用来开发 2D 游戏, 示例和其他图形/交互应用的框架。基于 pyglet。
Panda3D – 由迪士尼开发的 3D 游戏引擎,并由卡内基梅陇娱乐技术中心负责维护。使用C++编写, 针对 Python 进行了完全的封装。
Pygame – Pygame 是一组 Python 模块,用来编写游戏。
PyOgre – Ogre 3D 渲染引擎的 Python 绑定,可以用来开发游戏和仿真程序等任何 3D 应用。
PyOpenGL – OpenGL 的 Python 绑定及其相关 APIs。
PySDL2 – SDL2 库的封装,基于 ctypes。
RenPy – 一个视觉小说(visual novel)引擎。
3. 你都用Python 来做什么
当我知道可以做这些之后,我特别想会。因为论文查阅、答案确认查询;想知道豆瓣8分以上电影,或者穿越类的电影、处理工资数据考核表等。
可以干什么
1、上学吧答案神器 主要实现的是无限制获取上学吧网站上的题目答案(绕过 IP 限制),并实现了自动识别验证码,只用输入某个题目的网址,即可一键获取答案,速度非常快。“想要哈哈,自己或者给孩子辅导作业必备啊?”
2、抓取某系统内全部学生姓名学号及选课信息
3、扫描研究生系统上的弱密码用户、模拟登录图书馆系统并自动续借
4、给钓鱼网站批量提交垃圾信息 经常会收到含有钓鱼网站链接的短信的,一般都是盗取 QQ 密码的偏多,其实可以使用 Python 来批量给对方的服务器提交垃圾数据(需要先抓包),这样骗子看到信息之后就不知道哪些是真的哪些是假的了,说不定可以解救一部分填了密码的同学。
5、网易云音乐批量下载 可以批量下载网易云音乐热歌榜的歌曲,可以自己设定数量,速度非常快。
6、批量下载读者杂志某一期的全部文章
7、 获取城市PM2.5浓度和排名
8、爬取某网商品价格信息
你都用 Python 来做什么?
那Python 作为一种功能强大的编程语言,因其简单易学而受到很多开发者的青睐。那么,Python 的应用领域有哪些呢?
Python 的应用领域非常广泛,几乎所有大中型互联网企业都在使用 Python 完成各种各样的任务,例如国外的 Google、Youtube、Dropbox,国内的网络、新浪、搜狐、腾讯、阿里、网易、淘宝、知乎、豆瓣、汽车之家、美团等等。概括起来,Python 的应用领域主要有如下几个。
Web应用开发
Python 经常被用于 Web 开发,尽管目前 PHP、JS 依然是 Web 开发的主流语言,但 Python 上升势头更劲。尤其随着 Python 的 Web 开发框架逐渐成熟(比如 Django、flask、TurboGears、web2py 等等),程序员可以更轻松地开发和管理复杂的 Web 程序。例如,通过 mod_wsgi 模块,Apache 可以运行用 Python 编写的 Web 程序。Python 定义了 WSGI 标准应用接口来协调 HTTP 服务器与基于 Python 的 Web 程序之间的通信。举个最直观的例子,全球最大的搜索引擎 Google,在其网络搜索系统中就广泛使用 Python 语言。另外,我们经常访问的集电影、读书、音乐于一体的豆瓣网(如图 1 所示),也是使用 Python 实现的。
图2Python开发的游戏
除此之外,Python 可以直接调用 Open GL 实现 3D 绘制,这是高性能游戏引擎的技术基础。事实上,有很多 Python 语言实现的游戏引擎,例如 Pygame、Pyglet 以及 Cocos 2d 等。以上也仅是介绍了 Python 应用领域的“冰山一角”,例如,还可以利用 Pygame 进行游戏编程;用 PIL 和其他的一些工具进行图像处理;用 PyRo 工具包进行机器人控制编程,等等。有兴趣的读者,可自行搜索资料进行详细了解。
4. 如何自学Python
分享Python学习路线。
第一阶段Python基础与Linux数据库。这是Python的入门阶段,也是帮助零基础学员打好基础的重要阶段。你需要掌握Python基本语法规则及变量、逻辑控制、内置数据结构、文件操作、高级函数、模块、常用标准库模块、函数、异常处理、MySQL使用、协程等知识点。
学习目标:掌握Python基础语法,具备基础的编程能力;掌握Linux基本操作命令,掌握MySQL进阶内容,完成银行自动提款机系统实战、英汉词典、歌词解析器等项目。
第二阶段WEB全栈。这一部分主要学习Web前端相关技术,你需要掌握HTML、CSS、JavaScript、jQuery、BootStrap、Web开发基础、VUE、Flask Views、Flask模板、 数据库操作、Flask配置等知识。
学习目标:掌握WEB前端技术内容,掌握WEB后端框架,熟练使用Flask、Tornado、Django,可以完成数据监控后台的项目。
第三阶段数据分析+人工智能。这部分主要是学习爬虫相关的知识点,你需要掌握数据抓取、数据提取、数据存储、爬虫并发、动态网页抓取、scrapy框架、分布式爬虫、爬虫攻防、数据结构、算法等知识。
学习目标:可以掌握爬虫、数据采集,数据机构与算法进阶和人工智能技术。可以完成爬虫攻防、图片马赛克、电影推荐系统、地震预测、人工智能项目等阶段项目。
第四阶段高级进阶。这是Python高级知识点,你需要学习项目开发流程、部署、高并发、性能调优、Go语言基础、区块链入门等内容。
学习目标:可以掌握自动化运维与区块链开发技术,可以完成自动化运维项目、区块链等项目。
按照上面的Python学习路线图学习完后,你基本上就可以成为一名合格的Python开发工程师。当然,想要快速成为企业竞聘的精英人才,你需要有好的老师指导,还要有较多的项目积累实战经验。
自学本身难度较高,一步一步学下来肯定全面且扎实,如果自己有针对性的想学哪一部分,可以直接跳过暂时不需要的针对性的学习自己需要的模块,可以多看一些不同的视频学习。
5. 学python以后可以做什么
Python是一款流行的计算机编程语言,具有简单、易学、免费、开源、可移植、可扩展、可嵌入以及面向对象等特点,拥有强大的库,简洁的几行代码即可实现强大的功能,应用范围广泛,可广泛应用于以下领域:
1. Web开发
最火的Python
web框架Django,支持异步高并发的Tornado框架,短小精悍的flask,bottle,Django官方的标语把Django定义为the
framework for perfectionist with deadlines(大意是一个为完全主义者开发的高效率web框架)
2. 网络编程
支持高并发的Twisted网络框架,py3引入的asyncio使异步编程变的非常简单
3. 爬虫开发
爬虫领域,Python几乎是霸主地位,Scrapy/Request/BeautifuSoap/urllib等,想爬啥就爬啥
4. 云计算开发
目前最火最知名的云计算框架就是OpenStack,Python现在的火,很大一部分就是因为云计算市场近几年的爆发
5. 人工智能
MASA和Google早期大量使用Python,为什么Python积累了丰富的科学运算库,当AI时代来临后,Python从众多编程语言中脱颖而出,各种人工智能算法都基于Python编写,由其PyTorch之后,Python作为AI时代头牌语言的位置基本确立!
6. 自动化运维
问问中国的每个运维人员,运维人员必须会的语言是什么?10个人详细会给你一个相同的答案,它的名字叫Python
7. 金融分析
金融公司使用的很多分析程序、高频交易软件就是用的Python,目前,Python是金融分析、量化交易领域里用的最多的语言
8. 科学运算
97年开始,NASA就在大量使用Python在进行各种复杂的科学运算,随着NumPy,SciPy,Matplotlib,Enthought
librarys等众多程序库的开发,使得Python越来越适合做科学计算、绘制高质量的2D和3D图像。和科学计算领域最流行的商业软件Matlab相比,Python是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更广泛
9. 游戏开发
在网络游戏开发中Python也有很多应用。相比Lua or
C++,Python比Lua有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,与Lua相比,Python更适合作为一种Host语言,即程序的入口点是在Python那一端会比较好,然后用C/C++在非常必要的时候写一些扩展。Python非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。
10. 桌面软件
虽然大家很少使用桌面软件了,但是Python在图形界面开发上也很强大,你可以用tkinter/PyQT框架开发各种桌面软件!