原标题:python起源?为什么使用python?直至爱上python的五个理由

Python的创始人,吉多·范罗苏姆,是一名荷兰计算机程序员,他作为 Python 程序设计语言的作者而为人们熟知。在 Python 社区,吉多·范罗苏姆被人们认为是“仁慈的独裁者(BDFL),意思是他仍然关注 Python的开发进程,并在必要的时刻做出决定。他在 Google 工作,在那里他把一半的时间用来维护 Python 的开发。

吉多·范罗苏姆加入 Google,他用 Python 语言为 Google 写了面向网页的代码浏览工具。

吉多·范罗苏姆

1989年的圣诞节期间,吉多*范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为ABC语言的一种继承。

ABC是吉多参加设计的一种教学语言,就吉多本人看来,ABC这种语言非常优美和强大,是专门 为非程序员设计的,但是ABC语言并没有取得成功,究其原因,吉多认为是非开发造成的,吉多决 心在python中避免这一错误,并获取了非常好的效果。

之所以所以选择python(蟒蛇)来称谓程序的名字,是因为他是BBC电视剧——蒙提-派森的飞行马戏团《Monty Python’s Flying Circus》的爱好者

1991年,第一个python解释器的诞生,它是用C语言实现的,并且能调用C语言的库文件。

Python的设计目标

1999年,吉多-范罗苏姆向DARPA提交了一条名为”Computer Programming For Everybody”的资金申请,并在后来说明了他对Python的目标:

一门简单直观的语言并与主要竞争者一样强大

开源,以便任何人都可以为它做贡献

代码像纯英语那样容易理解

适用于短期开发的日常任务

这些想法中的基本都已经成为现实,Python已经成为一门流行的编程语言

Python的特点

Python是完全面向对象的语言,函数、模块、数字、字符串都是对象,在 Python中一切皆对象,完全支持继承、重载、多重继承,支持重载运算符,也支持泛型设计。

Python拥有一个强大的标准库,Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。

Python社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖科学计算、人工智能、机器学习、Web开发、数据库接口、图形系统多个领域。

爱上python的五个理由

1. Python 社区很独特

Python 社区非常棒。它是最早采用行为准则的组织之一,在 Python 社区中,你可以看到非常多有思想的博客文章和会议演讲供社区成员阅读,这是一个真正兼具多样性和包容性的社区。

同时,虽然社区是全球性的,但在本地社区也会有很多很棒的活动。当地的 Python 聚会是一个很好的去处,可以遇到聪明、有经验、乐于助人的人。许多聚会都会明确为有经验的人预留一些时间,以帮助希望学习新概念或解决代码问题的新手。当我开始我的 Python 学习之旅时,我的本地社区花了很多时间来帮助我,我很荣幸能够继续回馈给新的开发人员。

无论您是参加本地社区会议,还是在 IRC、Slack 和 Twitter 上花时间,我相信你都会遇到可爱的人,他们都希望帮助你成为成功的开发人员。

Python 的生态系统是庞大的

对于标准库中没有的很多东西,Python 有一个巨大的生态系统来支持新的 Pythonista,从令人兴奋的包到专门针对该语言的文本编辑器插件都有。PyPi 上托管了大约 200,000 个项目 (截止撰写本文时),而且项目数量还在不断增加,每个人都可以使用这些工具。

Python 标准库

Python 有一个很棒的标准库,其中隐藏了许多我以前不知道的宝贵内容,常量、类型等等的列表,我才有了大体的了解。我个人最喜欢的模块是 itertools 模块,但我更喜欢函数式编程模块,因为该模块在功能编程模块下列出。

Python 有强大的原函数

在编程语言设计中,原函数是最简单的可用元素。Python 易于阅读的事实并不意味着它不是一种功能强大的语言,而源于它对原函数的使用。我最喜欢的Python 既易于使用又高级的例子是其生成器的概念。假设你有一个简单的二叉树结构,包含 value、left、right。你希望按顺序轻松地对其进行迭代。您通常会寻找“小”元素,以便在找到正确的值时立即退出。到目前为止,这听起来很简单。然而,有很多种算法可以对元素进行操作。其他语言会让你写一个访问者,这样你可以在这个函数中判断“这是正确的元素吗?”你也可以在 Python 中这样做,但这并不是必须做的事情。

Python 读起来像可执行的伪代码

伪代码是这样一种概念,它不遵循特定语言的确切句法和语法来编写编程逻辑。自从成为一名 Python 程序员以来,我已经几乎不怎么编写伪代码了,因为 Python 的实际设计满足了我的需要。Python 对代码格式中的空白规定是出了名的。空白对于任何语言都是必需的,它能够让我们区分出句子中不同的单词。大多数语言都有关于空格用法的建议或“最佳实践”,但是 Python 大胆地要求标准化。对我来说,这使得阅读代码并准确地看到它在做什么变得非常简单。

Python 还避免了对分号的需求,分号是使其他语言可读的。

我在世界各地的社区中发现了善良、有思想的 Python 从业者,社区为有需要的人提供的投资数额令人鼓舞。除了我遇到的那些人之外,简单、干净、强大的 Python 语言让任何开发人员都有足够的能力在他们的软件开发生涯中充满自信,或者作为一个业余爱好者享受使用有趣语言的乐趣。以上就是爱上 Python 的 5 个理由,如果你有兴趣学习新语言,或许可以考虑使用 Python。返回搜狐,查看更多

责任编辑:

python来源是什么_python起源?为什么使用python?直至爱上python的五个理由相关推荐

  1. python 聚类算法包_Python聚类算法之DBSACN实例分析 python怎么用sklearn包进行聚类

    python 怎么可视化聚类的结果 science 发表的聚类算法的python代码 测试数据长什...说明你的样本数据中有nan值,通常是因为原始数据中包含空字符串或None值引起的. 解决办法是把 ...

  2. python变量命名规则_Python教程第9篇:牢记Python变量命名5大规则

    上一节课我们通过几行代码来理解Python变量,不知道你都动手操作了吗?Python变量名不是随便乱起的哈,需要遵循以下规则:1.  只能字母.下划线开头,不能数字开头.变量用小写字母开头是 Pyth ...

  3. python大文件排序_Python如何实现大文件排序?Python大文件排序的实现方法

    Python如何实现大文件排序?Python大文件排序的实现方法 本文实例讲述了Python实现大文件排序的方法.分享给大家供大家参考.具体实现方法如下: import gzip import os ...

  4. python怎么算阶乘_python专家写阶乘 ()用python计算阶乘

    请编写一个程序实现分享n的阶乘(即n.),并打印输出结果.要分享包括两个函def little_than_50(x): if x 语言很多时候是假的,一起经历过的事情才是真的. 这个用python写的 ...

  5. python的dropna函数_Python学习教程:从Excel到Python最常用的32个Pandas函数(一)

    原标题:Python学习教程:从Excel到Python最常用的32个Pandas函数(一) 本次的Python学习教程涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据 ...

  6. python自动办公知识点_Python自动化办公知识点整理汇总|简明python教程|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ 知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? ​ 这可能是很多非IT职场人士面临的困 ...

  7. python示波器 波形数据_python - 将示波器的VISA波形导入Python - 堆栈内存溢出

    我从此VISA收购电话获得的返回结果有问题: ribData = [] ribData = inst.query('CURVe?') 我正在使用此呼叫从示波器获取波形. 我正在用Python开发该程序 ...

  8. python语音控制手机_python 树莓派语音控制普通台灯教程-Python 实用宝典

    阅读这篇文章前,这两篇文章可能对你会有所帮助: 利用智能音箱语音控制电脑开关机 (必读,否则你可能不知道我在说什么) 先看看效果: 完成这项有趣的实验,你所需要的材料有: 1.电烙铁 2.一个8050 ...

  9. python nlp 句子提取_python nlp 句子提取_《用Python进行自然语言处理》第7章 从文本提取信息...

    1. 我们如何能构建一个系统,从非结构化文本中提取结构化数据? 2. 有哪些稳健的方法识别一个文本中描述的实体和关系? 3. 哪些语料库适合这项工作,我们如何使用它们来训练和评估我们的模型? 7.1 ...

最新文章

  1. 谷歌开放语音命令数据集,助力初学者利用深度学习解决音频识别问题
  2. Win2008 R2 WEB 服务器安全设置指南之修改3389端口与更新补丁
  3. python实现宿舍管理系统_基于PYTHON微信小程序的病历管理系统的设计与实现
  4. 解决Maven打包(编译)慢的问题
  5. mysql 登录默认实例_【MySQL案例】mysql本机登录-S失灵_mysql
  6. ** is not in the sudoers file. This incident will be reported. 给某个用户开放sudo权限。
  7. 微型计算机工作最小时间单位,2010~2011学年第1学期微机原理2试卷A(答案)
  8. 芯烨 Xprinter XP-DT108A 打印机驱动
  9. 这些年看过的书...
  10. 如何在一个月内高效地备考教师资格证?
  11. 服务器鼠标键盘进系统不能用,笔记本开机后鼠标键盘都不能用了怎么办?
  12. ECSHOP和SHOPEX快递单号查询中通插件V8.6专版
  13. 中基鸿业家庭理财注意事项
  14. C语言 输出出生日期
  15. excel高级功能-分级显示
  16. BOJ 427. 学姐逗学弟
  17. [转]FTP搜索引擎的设计与实现 1
  18. 服装ERP应用 20 ERP在分销型服装企业的物流管理
  19. linux中license路径,Elasticsearch安装过程中的license问题解决办法
  20. ctf训练 web安全暴力破解

热门文章

  1. 自动化 测试框架部署(python3+selenium2)
  2. 【机器学习实战】极大似然法
  3. C#中的事件和委托(续)
  4. Exchange2003-2010迁移系列之二,迁移前的准备工作(上)
  5. 不使用任何路由协议使3台路由器通信
  6. [转]经典的C语言著作,“C语言四书五经”
  7. 关系型数据库的核心单元是_核中的数据关系
  8. Power BI:M与DAX以及度量与计算列
  9. @Nullable 注解的用法
  10. 如何修复会话固定漏洞_PHP安全漏洞:会话劫持,跨站点脚本,SQL注入以及如何修复它们...