返回顶部
首页 > 资讯 > 后端开发 > Python >Python的特性是什么
  • 743
分享到

Python的特性是什么

2023-06-17 16:06:00 743人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“python的特性是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python的特性是什么”吧!我们***从最难的问题开始:“到底什么是函数编程 (FP)?”一个答案可能会

本篇内容主要讲解“python的特性是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Python的特性是什么”吧!

我们***从最难的问题开始:“到底什么是函数编程 (FP)?”一个答案可能会说 FP 就是您在使用例如 Lisp、Scheme、Haskell、ML、OCAML、Clean、Mercury、Erlang(或其它一些)语言进行编程时所做的。

这是一个稳妥的答案,但不能很确切地阐明问题。不幸的是,即使是函数程序员他们自己也很难对 FP 究竟是什么有个一致的认识。“盲人摸象”的故事用来形容这一情况似乎很合适。

还可以放心地将 FP 与“命令编程”(使用例如 C、Pascal、c++、Java、Perl、Awk、TCL 以及其它大多数语言所执行的操作,至少是在很大程度上)进行对比。 从个人角度来说,我会将函数编程粗略地描绘为至少具有以下几个特征。称得上函数性的语言使这些事情变得简单,而使其它事情变得困难或不可能:

函数是***类(对象)。即,可以对“数据”进行的每样操作都可以使用函数本身做到(例如将一个函数传递给另一个函数)。 将递归用作主要的控制结构。在某些语言中,不存在其它“循环”构造。 重点集中在列表 LISt 处理(例如,名称 Lisp)。列表经常和子列表的递归一起使用以替代循环。


“纯”函数语言能够避免副作用。这不包括在命令语言中最普遍的模式,即指定***个,然后将另一个值指定给同一个变量来跟踪程序状态。 FP 不鼓励或根本不允许出现语句,取而代之是使用表达式求值(换句话说,即函数加上自变量)。在很纯粹的情况下,一个程序就是一个表达式(加上支持的定义)。

FP 关心的是计算什么而不是如何计算。 许多 FP 利用了“更高等级”函数(换句话说,就是函数对一些函数操作,而这些函数又对其它函数操作)。
函数编程的提倡者认为所有这些特征都导致更快速的开发更短以及错误更少的代码。

而且,计算机科学、逻辑和数学领域的高级理论学家发现证明函数语言和程序的正式性能比命令语言和程序容易得多。 固有的 Python 函数能力 自从 Python 1.0 以来,Python 具有上面列出的大多数 FP 特征。但对于大多数 Python 特性,它们以一种非常混合的语言呈现。

很大程度上是因为 Python 的 OOP 特性,您可以使用希望使用的部分而忽略其余部分(直到在稍后需要它为止)。使用 Python 2.0,列表内涵添加了一些非常棒的“句法上的粉饰”。虽然列表内涵没有添加什么新的能力,但它们使许多旧的能力看起来好了许多。

Python 特性中 FP 的基本元素是函数 map()、reduce() 和 filter(),以及运算符 lambda。在 Python 1.x 中,apply() 函数对于将一个函数的列表返回值直接应用于另一个函数也很方便。Python 2.0 为这一目的提供了改进的语法。可能让人吃惊,但很少的这几个函数(以及基本运算符)几乎足以编写任何 Python程序;

特别是,所有的流控制语句(if、elif、else、assert、try 、except、finally、for、break、continue、while、def)可以只使用 FP 函数和运算符以函数风格处理。虽然实际上消除程序中的所有流控制命令可能只对加入“混乱的 Python”竞争(与看上去非常象 Lisp 的代码)有用,但是理解 FP 是如何使用函数和递归来表示流控制是值得的。

消除流控制语句 在我们执行消除联系时要考虑的***件事是 Python “短路”了布尔表达式的求值这一事实。这样就提供了表达式版本的 if/ elif/ else 块(假设每块都调用一个函数,通常总有可能这样安排)。下面是具体方法:

# NORMal statement-based flow control   if <cond1>: func1()   elif <cond2>: func2()   else: func3()    # Equivalent "short circuit" expression   (<cond1> and func1()) or (<cond2> and func2()) or (func3())    # Example "short circuit" expression   >>> x = 3   >>> def pr(s): return s   >>> (x==1 and pr('one')) or (x==2 and pr('two')) or (pr('other'))   'other'   >>> x = 2   >>> (x==1 and pr('one')) or (x==2 and pr('two')) or (pr('other'))   'two'

到此,相信大家对“Python的特性是什么”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Python的特性是什么

本文链接: https://www.lsjlt.com/news/290951.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python的特性是什么
    本篇内容主要讲解“Python的特性是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python的特性是什么”吧!我们***从最难的问题开始:“到底什么是函数编程 (FP)?”一个答案可能会...
    99+
    2023-06-17
  • python中 input()的特性是什么
    本篇文章给大家分享的是有关python中 input()的特性是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Python主要用来做什么Python主要应用于:1、Web开...
    99+
    2023-06-14
  • Python中字典的特性是什么
    Python中字典的特性是什么?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端开发,众多大型网...
    99+
    2023-06-14
  • PHP和Python的基础特性是什么
    这篇文章主要讲解了“PHP和Python的基础特性是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP和Python的基础特性是什么”吧!看PHP和Python:PHP的问题我之所以放...
    99+
    2023-06-17
  • python的13个特性分别是什么
    python的13个特性分别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。如果你是一个正在学习python的c、c++或者java程序员,或者你是刚开始学python...
    99+
    2023-06-02
  • MySQL的特性是什么
    这篇文章主要介绍MySQL的特性是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗...
    99+
    2024-04-02
  • node.js的特性是什么
    本文小编为大家详细介绍“node.js的特性是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“node.js的特性是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2024-04-02
  • JS的特性是什么
    这篇文章主要介绍“JS的特性是什么”,在日常操作中,相信很多人在JS的特性是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JS的特性是什么”的疑惑有所帮助!接下来,请跟着...
    99+
    2024-04-02
  • Shiro的特性是什么
    这篇文章主要介绍“Shiro的特性是什么”,在日常操作中,相信很多人在Shiro的特性是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shiro的特性是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-26
  • java的特性是什么
    java的特性是:1、简单易学;2、面向对象,使得代码更加可重用和可维护;3、平台无关性,能在不同的操作系统上运行;4、内存管理,通过自动垃圾回收机制来管理内存;5、强类型检查,变量在使用之前必须先声明类型;6、安全性,可以防止未经授权的访...
    99+
    2023-08-09
  • JS属性的特性是什么
    这篇文章将为大家详细讲解有关JS属性的特性是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。概念ECMAScript 5 中定义了一个名叫“属性描述符”的...
    99+
    2024-04-02
  • javascript特性是什么
    这篇文章给大家分享的是有关javascript特性是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 javascript特性有:1、展开操作符;2...
    99+
    2024-04-02
  • MySQL8.0的新特性是什么
    本篇文章给大家分享的是有关MySQL8.0的新特性是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。大量使用 class 重构代码明面上: ...
    99+
    2024-04-02
  • CSS3的新特性是什么
    本篇内容主要讲解“CSS3的新特性是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS3的新特性是什么”吧! 1.属性选择器(常用的简单归纳下) [a...
    99+
    2024-04-02
  • es6的新特性是什么
    这篇文章将为大家详细讲解有关es6的新特性是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。es6新特性:const与let变量、模板字面量、解构、增强的对象字面量、for...of循环、展开运算符(....
    99+
    2023-06-06
  • PHP7的新特性是什么
    这篇文章主要介绍“PHP7的新特性是什么”,在日常操作中,相信很多人在PHP7的新特性是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP7的新特性是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-17
  • Python3.1中的特性是什么
    这篇文章给大家分享的是有关Python3.1中的特性是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、千位数格式化在格式化大数时,通常是每三位数放置逗号,使数字更易读(例如,1,048,576 比 1048...
    99+
    2023-06-15
  • Java11的新特性是什么
    这篇文章主要讲解了“Java11的新特性是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java11的新特性是什么”吧!1. String API字符串绝对是 Java 中最常用的一个类...
    99+
    2023-06-02
  • python中随机数种子的特性是什么
    python中随机数种子的特性是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。说明1、在多次重复调用中生成的随机数不同,随机数函数无论任何分布任何类型,在确定了一次随机...
    99+
    2023-06-20
  • Python集成开发环境的特性是什么
    这篇文章将为大家详细讲解有关Python集成开发环境的特性是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。经过长时间学习Python 集成开发环境,于是和大家分享一下。学习Python ...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作