蟒蛇。一种易于思考的语言

哈Ha!



我们可以预订期待已久的Simple Python第二版。第一版的翻译版本于2016年出版,至今仍是畅销书。







由于我们确信Python是适合初学者以及与数据科学和机器学习一起使用的最佳编程语言,因此今天我们为您提供Dropbox网站上几篇世界观文章的翻译,其中Guido van Rossum结束了他的职业生涯-有关Python语言的含义和必不可少的内容。



编程的普遍影响无非是21世纪的特征。我们所做的几乎所有工作,特别是在工作中,几乎都是通过监视器完成的,通过监视器完成的,该监视器显示了巨大的计算工作的结果,我们今天认为这是理所当然的。对于那些不参与编程的人类中有99.7%的人,所有这些事情似乎都是靠魔术来实现的。正如伟大的科幻小说作家亚瑟·克拉克(Arthur Clarke)指出的那样,“任何足够先进的技术都无法与魔术区分开。”



当然,这不是魔术。但是编程是一个复杂且多层次的过程,严重的技术公司的代码库大小以数百万行代码来衡量。当您考虑如何在代码级别上实现一个真实的系统时,您会想到随着时间的推移,不同功能之间的复杂交互。您的代码在结构级别上可能多少有些复杂,但是固有的复杂性在您要解决的任务中是固有的,并且无法将这种复杂性降低到更简单的程度。



成为一名程序员不仅与产生想法有关,而且如果您不知道如何以外科手术的精确度用代码描述您的想法,那么您在该行业的工作不会持续很长时间。 Python慷慨的生命独裁者的创建者Guido van Rossum表示:``我有点怀疑系统思维在这种情况下是最重要的,因为概述系统概念要比将其转化为工作代码要容易得多。'' ...网络仍然是JavaScript,Java运行着25亿部Android手机,但是Python已成为通用编程和教育领域的事实上的标准。



为了使许多人更容易编写他们的想法而最努力的人就是Guido van Rossum,他为Python语言付出了30年的生命。此外,他做到的举止谦逊而幽默。该语言是根据怪诞的喜剧节目“ Monty Python”而不是缅甸蛇命名的。事不宜迟,Python编程语言使简化编程中的某些事情成为可能,尤其是对于理解。



为了了解van Rossum的工作方式,让我们回顾计算的历史,跳入大型机和机器语言的时代。 Rossum说:“大型机是一百万美元的机器,与大型机的成本相比,其所有程序员的薪水仅是几分钱。”因此,逻辑上认为机器时间比人工时间具有更高的优先级。 “但是当处理台式工作站和PC时,我意识到是时候改变对人工成本和机器时间成本之比的态度了。” Van Rossum并不认为自己是第一个注意到这一变化的人,但是他在设计Python语言时确实强调了这一变化。



这个简单的想法是``人为机器,而不是人为机器'',这是Python语言整个哲学的精髓。具体来说,它是一种解释性语言,而不是一种编译语言,这一事实意味着程序员在编写代码后即会立即看到编写的代码的效果,而无需在每次更改后都重新编译。如今,这种做法已经很普遍了,但是由于可以肯定的是计算机越快越好,因此很多年前人们对此模棱两可。重新定义此信念已对程序员的工作效率产生了显着的积极影响。



van Rossum说:“有很多常见的编程问题可以用Python轻松解决。” -“对于那些还不是程序员但只想成为一名程序员的人,进入Python的门槛特别低。”实际上,许多编程课程已经开始从Java转向Java,而不再是Python,因为对于初学者而言,它更容易理解。过渡的原因很复杂,有很多因素,每个因素都消除了一些粗糙的边缘。哲学的精髓是所有改进的核心:一切都必须有目的。如果没有冗余代码,则可以更轻松地专注于您真正需要关注的内容。 “在Python中,您键入的每个字符都很重要,” van Rossum说。



这种简洁性确保Python易于实现有形的结果,这就是该语言得到如此广泛使用的原因。 “将Python介绍给新手程序员也很重要。在几乎不了解术语和编程概念的情况下,您可以向人们展示非常小的代码片段,直到您理解它们“对van Rossum进行解释”为止,而在最小的Java程序中,您会发现一大堆符号这对初学者来说就像是涟漪。”



通过如此冷静和简单的语言设计,可以更轻松地理解代码中正在发生的事情。范·罗苏姆(van Rossum)说:“ Python对我来说似乎难以描述。” “当我阅读Python时,我肯定会认为它的结构是两层的,而不是一层的。这可能是因为缩进在Python中很重要,也可能是因为我只想直观地思考。”



当然,视觉思维并不是他一个人独有的。我们大家都在某种程度上以这种方式思考。但他特别强调视觉成分在认知活动中的作用。 “如果文本格式不正确,可能会激怒我。然后,对文本流的解析在我的脑海中变得混乱了,从这个意义上讲,我可以认为我认为在Python中,” van Rossum承认。 “如果格式正确,我会更好地吸收代码。”代码中的缩进是任意的,比起每个缩进都有明确的用途(例如在Python中),需要更多的信息来解开代码的含义。因此,Python使用起来很方便:您必须消化较少的信息才能了解正在发生的事情。



Python不仅在字体方面是可读的,而且在概念上也是可读的。范·罗瑟姆(Van Rossum)认为,就我们对代码所表示的结构的视觉感知而言,Python可能比其他编程语言更准确,因为``在Python中,必须遵守结构。



Clive Thompson,CODERS的作者“,说”,在准备写这本书的时候,我与许多完全喜欢Python的开发人员进行了交谈。几乎每个人无一例外都说“ Python很漂亮”。他们喜欢可读性,发现很容易了解Python代码并了解其目的。这种语言没有花括号,排列成整齐的架子,确实很像现代诗歌。”他们还认为Python编写很有趣,这比乍一看看上去要重要得多。汤普森写道:“当您认识编码员时,就会在您面前看到一个日常工作充满无尽挫折和压抑沮丧的人。”



在语言中内置了对程序员时间的尊重时,它会以一种有趣的方式反映在语言社区中。有一种源自Python的社会哲学:程序员对自己的代码负责,因为他知道自己正在为其他人编写代码。有一个不言而喻的论点,Van Rossum本人在他的课文和讲座中积极地提倡:花更多的时间,使以后阅读您的代码的人更容易些。尊重自己的同事并尊重自己的时间是范·罗瑟姆(van Rossum)在世界范围内悄悄提倡的一种道德观。他说:“您编写代码主要是为了与其他程序员交流,而在较小程度上是将您的意志强加于计算机上。”

围绕Python的文化的多功能性使van Rossum在大约二十年前发起短命的CP4E项目(所有人的计算机编程)时就想到了一些构想。 “我通常不能夸耀有远见的才华。人们问我Python的未来如何,我不知道。但我最重要的预言是,我认为这样的论点是,学习编程对于每个人都应有的时机已经到来。”那时,个人计算机已经存在了大约20年,但其中大多数是炒作打字机和计算器。然后,范·罗苏姆问自己:“这么多人拥有计算机,却很少有人学习编程,这是不是很疯狂?”



从那时起,他一直在不断简化编程,并且这项工作可以轻松地追溯到Python的开发,现在已经达到3.7版。Rossum仍然相信编程通常会灌输有用的技能,特别是解决问题,认真遵循一个或另一个方向并理解该方向的含义的能力。但是他还发现,“虽然有些编程不是孩子们感兴趣的,但对孩子们还是很有趣的。因此,我认为程序设计不应作为必修科目纳入学校课程。”



同时,由于人们已经出现了许多现成的程序,尤其是在Internet上,因此今天对一个人进行计算机编程不再是那么重要了,它们使您可以直观地应对以前需要编程的解决方案的任务。



但是,现在越来越多的人在各种学科中使用Python。 van Rossum表示:“今天流行一种理论,解释了Python出乎意料的成功。对此,他非常幸运,可以在数据科学和机器学习以及一般的数据科学中站稳脚跟。一旦您掌握了相当数量的Python技能,与同龄人和竞争对手使用相同的系统就比学习新知识要容易得多。”而且,根据van Rossum的说法,尽管Python最初是程序员常用的工具,但如今它还是业余爱好者的一种语言,并且根据van Rossum的说法,它是Python的最佳用法。



一个成功的开源软件项目(如Python)对于初学者来说很容易学习,但是也可以在现实世界中找到更高级的用户需要的实际应用问题。就像与初学者一起工作时一样,我们努力不使该语言复杂化,以便他们可以全力以赴来学习开发环境中固有的复杂性,因此在与高级用户一起工作时,该语言的简单性派上了用场,因为它使人更容易学习竞争性抽象。之所以希望尽可能简化Python的实现,部分原因在于,使用这种语言时,很容易更改观点,学习和重复。 van Rossum说:“用Python编写原型并将其投入生产通常并不那么困难。”“然后您就可以舍弃这个原型,并根据已学到的知识实施相同的原型。第二个版本也可以用Python编写,但是它将比第一个版本好得多。”



Python的无情魅力部分是由于该语言的乐观性以及重新开始的难易程度。 “如果您花了很多时间编写和调试代码,那么您真的不想扔掉它并重新开始。” Drpopbox的联合创始人兼首席执行官Drew Houston用Python从波士顿到纽约的五个小时车程中编写了该服务的第一个原型。 van Rossum说:“很多时候,第一批Dropbox原型被报废了。”



您可以从Python中学到什么有关如何创建高质量的心理工具的知识?蒂姆·彼得斯(Tim Peters)是Python的最大贡献者之一,他在标语中写道“ Python的禅””,解释了指导范·罗森(van Rossum)的原则。在本文中,以下两项是最重要的:“简单胜于复杂。复杂胜于复杂。” 实际上,这是大脑优先考虑其自身功能以有效利用能量的秘诀。



对于van Rossum而言,思考和创建工具的社会方面同样重要。他从使用Python的30年漫游中学到了什么?“我了解到不可能独自解决这一问题,这对我来说是一个艰难的教训。我了解到,您并非总是能获得自己想要的结果,但是也许结果并没有比您期望的要差甚至更好。”



All Articles