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

原标题: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。返回搜狐,查看更多

责任编辑:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/396640.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统(五)负载均衡LVS集群之DR模式

序言 DR模式是lvs集群中三种负载均衡模式的其中一种,那么上一篇中我写啦关于NAT模式的搭建与原理,为什么还要有DR模式与IP隧道模式呢? 首先我们来看3张图。LVS/NAT模式如下图: LVS/IP隧道模式,如下图: LVS/…

Redux API之applyMiddleware

applyMiddleware(...middlewares) 使用包含自定义功能的 middleware 来扩展 Redux 是一种推荐的方式。Middleware 可以让你包装 store 的dispatch 方法来达到你想要的目的。同时, middleware 还拥有“可组合”这一关键特性。多个 middleware 可以被组合到一起使用&a…

计算机2018创业方向,推荐2018年创业的方向

原标题:推荐2018年创业的方向1 新电商传统的零售业收到互联网电商的重冲击,从而进行线上线下的结合是必然的趋势,新零售,新电商,是几千万零售企业成功转型的必然之路,学习一套全面的新电商转型的方法&#…

包无法安装_详细教程 | 安装Python编程环境以及使用OpenpyXl操作Excel

详细教程 | 安装Python编程环境以及使用OpenpyXl操作Excel注意:下列教程为 Windows7 64位;Windows 10有部分步骤有差异,请参考使用!01 下载Python程序安装包首先前往Python官网 www.python.org,进入官网点击 Downloads,然后点击 W…

Activity、Fragment、Dialog基类简单整理

版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 这里简单记录下Activity、Fragment、Dialog基类中的常规写法,后续根据项目需求进行相应的扩展。 BaseActivity.java package com.why.project.myapptemplet.activity;impo…

request重定向_golang不想http自动处理重定向的解决方案

前言有时候发送http请求不想让库自动帮忙处理重定向,库里面默认的是会把所有重定向都完成一遍,结果就是最后一个没有重定向的请求的结果。因此需要一种方案直接获取首次访问的结果,不走重定向。go的http库里面是使用如下代码检查重定向的&…

C语言项目开发-项目架构和编程命名规范

一个项目的流程:1、公司市场人员与客户交流,了解客户、引导客户使用公司最优资源并产出一份市场需求文档 2、公司需求人员(BA)与客户交流,了解客户需求并产出一个软件需求文档 3、项目经理、开发小组成员、需求人员&am…

ajax登录验证的原理,ajax用户登录验证-get和post提交方式,与工作原理—2018-8-15...

ajax用户登录验证:实例html>Ajax实战:表单验证用户登录邮箱: 密码: 提交let btn document.getElementsByTagName(button)[0];btn.onclick function () {//1.创建xhr对象let xhr new XMLHttpRequest();//2.监听响应状态xhr.onreadystatechange function(){// …

将Python脚本打包成可执行文件

Python是一个脚本语言,被解释器解释执行。它的发布方式: .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库。(Python官方的各种安装包就是这样做的&a…

float foo=42e1为什么错_为什么重写了equals()也要重写hashCode()

小Hub领读:虽然是很基础的一篇文章,但是对于equals、hashcode两个方法,相信很多人都与其中的规则不熟悉,来跟着小Hub花个8分钟回顾一下!作者:不学无数的程序员https://my.oschina.net/u/4030990/blog/31341…

ssh客户端_一款基于TAS框架的SSH客户端蠕虫

TEA是一款基于TAS框架的SSH客户端蠕虫,从本质上说,它是一个仿冒的SSH客户端,它能够修改tty输入/输出来实现任意命令执行,或通过SSH连接来上传自身以实现渗透感染。为了实现该工具的正常功能,远程主机需要满足以下条件&…

Selenium入门11 滚动条控制(通过js)

这一节要有js基础。做web端的UI自动化必须要有html,css,javascript前端基础。 滚动条控制: 1 移动垂直滚动条 document.documentElement.scrollTop 2 移动垂直滚动条 document.documentElement.scrollLeft 3 找到某个元素,移动到可…

Qt之QNetworkInterface

简述 QNetworkInterface类负责提供主机的IP地址和网络接口的列表。 QNetworkInterface表示了当前程序正在运行时与主机绑定的一个网络接口。每个网络接口可能包含0个或多个IP地址,每个IP地址都可选择性地与一个子网掩码和/或一个广播地址相关联。这样的列表可以通过…

第二周计划

上周计划回顾 3.5 ~ 3.11 数据: 评师网爬取,完成:2k条记录 finished后端 数据结构 技术选型 学校API封装未完成:后端负责人出差 工作暂停产品 功能设计:主要功能提交:原型图 几个页面 每个页面大概功能完成…

python编程软件排行榜_PYPL 9月编程语言排行榜发布 Python一枝独秀

开发者可以将 PYPL 作为一个参考,决定学习何种语言或 IDE,或者在新的软件项目中使用何种语言或数据库。9 月份的榜单如下:前五名分别是 Python、Java、JavaScript、C# 与 PHP。相比去年 9 月份的数据,除了 Python 大幅上涨了 4.5%…

分享到系统面板_win7电脑没有nvidia控制面板怎么办【解决方法】

我们在使用电脑的时候,当电脑显卡出现问题导致屏幕画面不清晰时,可以使用win7系统自带nvidia控制面板,它能够对显卡进行设置,提升显卡功能,不过很多电脑用户点击nvidia控制面板时却提示nvidia显示设置不可用&#xff0…

Python之数据加密与解密(hashlib、hmac、random、base64、pycrypto)--转载

本文内容 数据加密概述Python中实现数据加密的模块简介hashlib与hmac模块介绍random与secrets模块介绍base64模块介绍pycrypto模块介绍总结参考文档提示: Python 2.7中的str是字节串,而Python 3.x中的str是字符串。本文中的代码都是通过Python 2.7实现的…

day3-文件操作之基本操作

一、文件的基本操作 文件内容: Somehow, it seems the love I knew was always the most destructive kind 不知为何,我经历的爱情总是最具毁灭性的的那种 Yesterday when I was young 昨日当我年少轻狂1、read() 当read()函数中传入整数(int)参数&#…

QT连接多种数据库f方法及测试

QT提供了对多种数据库的访问支持,对SQL Server也可以通过ODBC来进行访问。要想顺利访问SQL Server。 首先要保证以下几点:1. QT编译时已经编译了QtSql2. 编译了ODBC插件。可以通过 configure -plugin-sql-odbc来保证,也可以单独编译~/src/plu…

服务器如何实现电脑无线桥接,无线路由器WDS桥接成功副路由器下电脑无法上网怎么办【解决方法】...

摘 要无线WDS桥接设置完成后,在副路由器管理面,运行状态 无线状态 中,WDS状态显示成功,但电脑通过副路由无法上网。该问题可能与主、副路由器的设置有关,如下图所示: 解决办法: 排查一&#xff…