快捷搜索:  汽车  科技

为啥要学python(为什么要学习Python)

为啥要学python(为什么要学习Python)Python语言的核心只包含数值、字符串、列表、字典、文件等常见类型和函数,Python标准库则提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等许多常用的功能:Python 语言语法足够简单,入门比较容易,天生跨平台,再加上可以找到几乎所有用途的库,这些因素是Python流行起来的重要因素。IEEE Spectrum 通过综合 CareerBuilder、GitHub、Google、Hacker News、IEEE、Reddit、Stack Overflow 和 Twitter 八个来源 ,分析了 55 种编程语言的流行度,发布了 2020 年度编程语言排行榜。Python 连续四年夺冠!IEEE Spectrum那么Python为什么如此流行呢?

Python 现在如此火爆,已发展成为一种非常通用的语言,无论是简单的办公自动化,还是复杂的数据挖掘、科学计算、图像处理、人工智能、网络爬虫等,Python 都可以胜任。很多省市已经将Python编入小学教材,也可以从中看到Python的重要性。

根据最新的2021年10月Tiobe编程语言排行榜,Python已经成为冠军。

为啥要学python(为什么要学习Python)(1)

通过 StackOverflow 上的标签分析软件开发语言 / 工具的趋势,Python语言已经位列冠军。

为啥要学python(为什么要学习Python)(2)

Stack Overflow 上各种编程语言的标签快照

IEEE Spectrum 通过综合 CareerBuilder、GitHub、Google、Hacker News、IEEE、Reddit、Stack Overflow 和 Twitter 八个来源 ,分析了 55 种编程语言的流行度,发布了 2020 年度编程语言排行榜。Python 连续四年夺冠!

为啥要学python(为什么要学习Python)(3)

IEEE Spectrum

那么Python为什么如此流行呢?

用途广泛

Python 语言语法足够简单,入门比较容易,天生跨平台,再加上可以找到几乎所有用途的库,这些因素是Python流行起来的重要因素。

Python语言的核心只包含数值、字符串、列表、字典、文件等常见类型和函数,Python标准库则提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等许多常用的功能:

  • 文本处理,包含文本格式化、正则表达式、文本差异计算与合并、Unicode支持,二进制数据处理等功能。
  • 文件系统功能,包含文件和目录操作、创建临时文件、文件压缩与归档、操作配置文件等功能。
  • asyncio,异步IO处理
  • 操作系统功能,包含线程与进程支持、IO复用、日期与时间处理、调用系统函数、日志(logging)等功能。
  • 网络通信,包含网络套接字,SSL加密通信、异步网络通信等功能。支持HTTP,FTP,SMTP,POP,IMAP,NNTP,XMLRPC等多种网络协议,并提供了编写网络服务器的框架。
  • W3C格式支持,包含HTML,SGML,XML的处理。
  • 其它功能,包括国际化支持、数学运算、HASH、Tkinter等。
开发环境

Python自带一个简陋的开发环境IDLE,不过它太简单了,建议直接忽略它。推荐使用Anaconda或者PyCharm,它们都有免费的社区版,足够个人学习和使用了。

Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),Anaconda致力于简化包管理和部署。Anaconda的包使用软件包管理系统Conda进行管理。超过1200万人使用Anaconda发行版本,并且Anaconda拥有超过1400个适用于Windows、Linux和MacOS的数据科学软件包。

Anaconda官网:https://www.anaconda.com/

以我安装的2.0.3版本为例,内置了362个常见的软件包

为啥要学python(为什么要学习Python)(4)

Anaconda还内置了Jupyter Lab和Notebook,jupyter lab可以看成是jupyter notebook高级版本,建议直接使用Lab。

为啥要学python(为什么要学习Python)(5)

Jupyter Lab还可以安装各种插件,增强它的功能。

为啥要学python(为什么要学习Python)(6)

捷克JetBrains出品PyCharm可以说是目前最流行的Python IDE,支持Microsoft Windows、macOS和Linux操作系统,提供代码分析、图形化调试器,集成测试器、集成版本控制系统等功能,个人用户可以使用免费的社区版。

为啥要学python(为什么要学习Python)(7)

除此以外,还可以使用Visual Studio Code、Visual Studio 社区版等集成开发环境。

丰富的Python库

Python的流行很大程度上归功于其丰富的第三方库,基本上涵盖了所有方面:

Web开发:Django、Flask、Tornado

GUI:PyQt

科学计算:

  • NumPy:Python的基础性的科学计算第三方库,提供了矩阵,线性代数,傅立叶变换等等的解决方案。
  • Pandas:用于数据分析、数据建模、数据可视化的第三方库。
  • Matplotlib:用Python实现类似MATLAB绘图功能的第三方库,用以绘制一些高质量的数学二维图形。
  • SciPy:使用NumPy的多维数组作为基本数据结构,用Python实现了MATLAB所有功能的第三方库。
  • SymPy:支持数学符号运算的第三方库,用于提供计算机代数系统。

数据库:SQLAlchemy、Django ORM、

人工智能/机器学习:TensorFlow、PyTorch、Keras、Sci-kit learn

爬虫:Request、Scrapy、Crawley、Beautiful Soup、urllib3

办公自动化:python-docx、xlwings、openpyxl、python-pptx、pdfplumber、pywin32

图片处理:Pillow

事件驱动网络框架:Twisted

单元测试框架:pytest

时间:Arrow 为开发者提供了「人类的时间(datetime for humans)」,提供了一种清晰的方法来创建、操作、格式化和转换日期、时间和时间戳。它可以用于替换 Python 2 和 3 的 datetime 类型,并提供了一个更友好的界面,同时加入新的功能(如 humanize)弥补了原系统的不足。

数据可视化:

Pyecharts,一个用于生成 Echarts 图表的Python类库。Echarts 是百度开源的一个数据可视化 JS 库。与此类似的还有Matplotlib和Seaborn。

Seaborn是基于matplotlib的图形可视化python包。它提供了一种高度交互式界面,便于用户能够做出各种有吸引力的统计图表。Seaborn高度兼容numpy与pandas数据结构以及scipy与statsmodels等统计模式。

参考文档

Python - 维基百科,自由的百科全书 (wikipedia.org):https://zh.wikipedia.org/wiki/Python

猜您喜欢: