为什么大家都在学Python?Python到底好在哪?

简介: 为什么大家都在学Python?Python到底好在哪?

01、python 产生背景

Python 是著名的“龟叔”Guido van Rossum 在 1989 年圣诞节期间, 为了打发无聊的圣诞节而编写的一个编程语言

02、python 编程地位

通过TIOBE排行榜来看一下python的地位

根据图片可以看出: 排名位居第三位, 除了编写操作系统贴近硬件的 C广泛应用于企业开发的 Java, python 是谁都不服, 而且排名相对稳定。19 年和 20 年都是第三位, 并无明显浮动

所以想要学习 python, 却还没入手的同学可以放心大胆的学了

TIOBE 排行榜是根据互联网上有经验的程序员、课程和第三方厂商的数量, 并使用搜索引擎(如 Google、Bing、Yahoo!)以及 Wikipedia、Amazon、YouTube 统计出排名数据。 ——百度百科

03、python 函数类库

我最初学 python 时有这么一个疑问: python 有没有类似 Java 中 jdk 自带的一些类库, 帮助我们把 常规以及重复操作进行封装使用

事实证明: 多虑了, 我都能想到, 作者会想不到吗 😂

python 自带的类库包括: re,json,time,random,sys,os 等, 涵盖了 json 操作,时间,随机数,流,网络 等操作

除了 python 自带的类库, 还有大量的第三方类库提供引用

04、python 语言特点

Python 是一种 跨平台 的计算机程序设计语言, 可以运行 windos、macos、linux 多个端。 本质上是一个 解释型的脚本语言, 拥有面向对象等特征

解释型: 一边执行一边转换, 执行一行代码, 就将代码翻译成计算机能识别的指令。而 Java、C 等编译型语言则不是这种方式

4.1 python 优点

龟叔给 python 的定位是 “优雅”、“明确”、“简单”, 所以就有了 python 用一招, java 用花招 这种网络段子

python 宗旨就是尽量写 容易看明白 的代码, 尽量 写少的代码, 所以初学者接触 python 并不难

因为 python 本身的 简洁特性, 上手难度并不高, 当时大概学习了不到一天的时间就可以写一些网络调取以及数据清洗入库的脚本

4.2 python 缺点

运行速度

python 的缺点也比较明显, 那就是它的 运行程序的执行速度, 网上有统计的 java、python、c 相关的编程语言运行速度统计, 这里就不详细说了

这里会不会有这么一个疑问: 既然 python 慢, 那为什么这么多人还使用呢?

举个例子, 如果 python 运行一段程序需要 1 秒, C 运行需要 0.01 秒, 对于用户而言是 感觉不到明显差距的

如果你平常使用 python 来编写 便捷功能 脚本,那就更无所谓了。比如说你调用钉钉发送消息的接口, 同时用 C 和 python 分别调取。在时间较短的情况下, 作为调用者你是感知不到与其它语言的速度差异的

当然啦, 说再多的话, 性能慢这是硬伤, 没有办法

代码加密

python 的代码无法进行加密这也是硬伤。 举个例子说明一下, 假如你用的 java 在为客户方公司做项目, 进度到了验收阶段, 客户要求把系统部署到他们环境上一份

因为 java 是编译型语言, 源代码会以 jar 包的形式发布出去, 而且为了防止代码被反编译, 还有 代码混淆、代码加密、虚拟化等技术来解决

但是 python 作为解释型语言, 如果你是用 python 编写的项目, 那么只能把源代码发布出去

类似于企业交付型项目, 很少有听说是用 python 编写。也没有去研究调研 python 如何安全交付等事情

05、python 能做什么?

python 能做的事情非常之多, 简单举几个例子进行说明

5.1 web 开发

pytyon 拥有非常完善的与 web 服务器进行交互的库,以及大量的免费的前端网页模板。更具优势的是,有非常优秀且成熟的 Django Web 框架,功能一应俱全

5.2 数据处理

python 作为一门工程性语言,对于数据处理的类库是相当丰富的,比如有高性能的科学计算类库 NumPy 和 SciPy

5.3 人工智能

真正的人工智能的底层语言是 C/C++,因为真正的计算全在于 C/C++,而 python 仅仅是调用 AI 的接口然后去实现一些逻辑,是因为 CPython 和底层原因的融合使得开发起来更加方便

5.4 网络爬虫

爬虫是属于运营的比较多的一个场景,爬取后的数据分析与计算是 python 最为擅长的领域。目前 python 比较流行的网络爬虫框架是功能非常强大的 scrapy

06、总结

我个人觉得学习下 python 还是有必要的, 如果你本身会一门编程语言, 那么会很快上手编写代码

工作中我是使用 python 造数据、编写功能脚本、清洗一些数据这些功能, 和 Java 相比较的话, 便捷性是我学习它的唯一动力

毕竟也不会转 python 开发, 主要是因为 java 太重了, 如果使用 maven 管理项目的话, 需要引用各种依赖包

而 python 则不会, 内置包已经能满足绝大多数需求了, 相信使用过的同学都很清楚

下一篇系列文章讲下电脑上如何安装 python

相关文章
|
2月前
|
开发者 Python
GitHub飙升!京东认证的“Python编程入门三剑客”究竟好在哪?
Python凭借着简单易学、功能强大,已经跃居TIOB编程语言榜首,并且已经开始了它的霸榜之旅。如何选择一套适合自己的Python学习教程,是每个Python爱好者面临的首要问题。
|
2月前
|
开发者 Python
GitHub飙升!京东认证的“Python编程入门三剑客”究竟好在哪?
Python凭借着简单易学、功能强大,已经跃居TIOB编程语言榜首,并且已经开始了它的霸榜之旅。如何选择一套适合自己的Python学习教程,是每个Python爱好者面临的首要问题。 今天给小伙伴们带来的是图灵&京东认证的“Python编程入门三剑客”,先看《Python编程从入门到实践》,打好Python入门的底子;再看《Python编程快速上手》,增强用Python处理工作中实际问题的能力;最后看《Python极客项目编程》,用充满想象力的实战案例,充分理解Python编程的奥秘,完成从小白到大神的进化。
|
7天前
|
算法 程序员 开发工具
百万级Python讲师又一力作!Python编程轻松进阶,豆瓣评分8.1
在学习Python的旅程中你是否正在“绝望的沙漠”里徘徊? 学完基础教程的你,是否还在为选择什么学习资料犹豫不决,不知从何入手,提高自己?
百万级Python讲师又一力作!Python编程轻松进阶,豆瓣评分8.1
|
4天前
|
算法 程序员 开发工具
百万级Python讲师又一力作!Python编程轻松进阶,豆瓣评分8.1
在学习Python的旅程中你是否正在“绝望的沙漠”里徘徊? 学完基础教程的你,是否还在为选择什么学习资料犹豫不决,不知从何入手,提高自己?
|
2天前
|
数据采集 存储 人工智能
掌握Python编程:从基础到进阶的实用指南
【8月更文挑战第17天】 本文旨在通过浅显易懂的语言和实际案例,为初学者和有一定基础的开发者提供一条清晰的Python学习路径。我们将从Python的基本语法入手,逐步深入到面向对象编程、数据科学应用及网络爬虫开发等高级主题。每个部分都配备了代码示例和实操建议,确保读者能够将理论知识转化为实际能力。无论你是编程新手,还是希望提升Python技能的开发者,这篇文章都将为你打开一扇通往高效编程世界的大门。
7 2
|
7天前
|
Python
python Process 多进程编程
python Process 多进程编程
17 1
|
11天前
|
存储 数据挖掘 程序员
揭秘Python:掌握这些基本语法和数据类型,你将拥有编程世界的钥匙!
【8月更文挑战第8天】Python是一种高级、解释型语言,以简洁的语法和强大的功能广受好评。本文从基本语法入手,强调Python独特的缩进规则,展示清晰的代码结构。接着介绍了Python的主要数据类型,包括数值、字符串、列表、元组、集合和字典,并提供了示例代码。通过这些基础知识的学习,你将为深入探索Python及其在文本处理、数据分析等领域的应用打下坚实的基础。
25 3
|
13天前
|
Python
揭秘!Python系统编程里那些让代码自由穿梭的神奇代码行
【8月更文挑战第6天】在Python编程中,一些简洁有力的代码构造让程序更加灵动高效。列表推导式能一行生成列表,如`squares = [x**2 for x in range(10)]`。`with`语句确保资源自动释放,例`with open('example.txt', 'r') as file:`。`lambda`函数便于快速定义小函数,`map(lambda x: x + 1, numbers)`即可完成列表映射。
28 4
|
13天前
|
API C语言 开发者
Python如何成为跨平台编程的超级巨星:系统调用深度探索
【8月更文挑战第6天】Python凭借简洁的语法和强大的库支持,在编程领域中脱颖而出。其跨平台特性是基于CPython等解释器的设计理念,使得Python程序能在不同操作系统上运行而无需修改代码。Python标准库提供的抽象层隐藏了系统间的差异,加之ctypes等扩展机制,使开发者能高效地编写兼容性强且性能优异的应用。例如,在Windows上利用ctypes调用GetSystemTime系统API获取当前时间,展现了Python深入系统底层的强大能力和灵活性。随着技术演进,Python将继续巩固其作为首选编程语言的地位。
19 3