Python技术特点

举报
Jet Ding 发表于 2020/09/28 18:26:51 2020/09/28
【摘要】 聊聊当前最热门的编程语言python的一些特性。

Python是一种解释型的高级通用的编程语言,它的创作者是Guido van Rossum,1991年首次发布。

其设计理念,是强调代码的可读性。其宗旨是帮助程序员写出清晰的代码。

Python是动态类型的,并且支持垃圾回收,也支持多种编程模式,包括结构化编程,面向对象编程和函数式编程。

Python拥有全面的标准库,生态系统非常强,应用的场景也非常的广。

Python有两个主要版本,一个是2.x,一个是3.x。这两个版本并不是相互兼容的,2.x上的代码并不保证能够在3.x上跑。2020年开始,2.x版本正式弃用,不会有更多的支持了。2.x的最后一个版本是2.7.18。随着2.x的寿终正寝,Python以后只会支持3.5.x以及以后的版本了。

Python可以运行在多个操作系统上, Python软件基金会负责管理和指导Python以及CPython的资源。

内存管理方面Python是使用动态类型, 引用计数与循环检测垃圾收集器的组合来进行的。它具有动态名称解析的功能,在程序执行过程中绑定方法和变量名。

其设计为lisp传统函数式编程提供了一些支持,比如说它有过滤器,映射和reduce函数。

Python的设计理念是追求极简主义,强调可读性。

与其他编程语言不同的是,它不是用大括号来划分程序块,语句后的分号是可选的,语法异常和特殊情况比c语言要少。

Python使用空格缩进来划分程序块的界限。

Python的赋值语句用来把变量名字跟实际的数值对象绑定。这就是为什么一个变量可以被不同类型的数值绑定。

Python里面常用的关键字有if,for,while,try,raise,class,def,with,break,continue,pass,assert,yield,import.

运算符方面,加法,减法和乘法跟其他语言是一样的,但是除法不同,因为除法有两种,一种是浮点除法,一种是整数除法。此外Python还支持指数**运算符。

从3.5开始添加了矩阵乘法运算符@infix。

从3.8开始添加了walrus运算符:=。

 

双等号用来做值比较。

is用来做对象的比较。

布尔运算使用了单词and, or, not。

使用list comprehension来处理列表,后来被扩展为generator expression。

匿名函数由lamda表达式实现。主体只能是一个表达式。

条件表达式可以被写成x if c else y。

列表和元组有区分。列表用方括号括起来,是可变的,元组用圆括号括起来不可变。

支持序列解包。

支持字符串格式操作符。

可以用单引号或双引号来表示字符串,三个单引号或双引号可以表示跨行的字符串。

用r可以支持原生的字符串,比如转义字符。

支持数组索引和数组分片表达式,索引是基于0的,负的索引表示从末端开始。分片表达式,从开始索引到终止索引,不包含终止索引的元素。如果有第3个分片参数,可以作为step,用于跳过或者反转。

赋值语句不能够当做条件语句的表达式。这样可以避免经典的c风格错误。

对象的方法是附加在对象类上的函数。可以用显式的self参数来访问实例的数据。

Python是动态类型化的,但是强类型化的,也就是说禁止那些没有明确定义的操作。

允许程序员使用类来定义自己的类型。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200