什么是语法糖?
提起语法糖,可能很多不是编程老鸟的朋友可能一脸懵圈,而且编程老鸟也不一定用过,语法糖如果我们能够熟练的使用,将会对我们的工作以及学习有极大的帮助,你的代码也会比其它人的简洁!
在计算机科学中,是指编程语言中可以更容易的表达一个操作的语法,它可以使程序员更加容易去使用这门语言:操作可以变得更加清晰、方便,或者更加符合程序员的编程习惯。
语法糖是语言中的一个构件,当去掉该构件后,并不影响语言的功能和表达能力。
简而言之,语法糖是一种便捷写法。
为了使大家更加清晰的了解语法糖,先给大家举一个小例子?
>>>> 提起语法糖,假设我们想要比较两个数字中哪一个比较大,我们会怎么做?
正常情况下我们都会使用上图这种写法,但是实现这个功能有很多种写法,到底怎么样才可以称作语法糖呢?
PYTHON中一些常见的语法糖:
可以看到这些语法,在其它语言里通常不会出现的。但是在Python中却神奇的被支持了,所以这些都是当之无愧的Python语法糖。
WITH语法糖
with语法糖实现的是一个上下文管理器,它主要的特点就是帮助我们自动管理上下文的衔接。即在需要的时候传给我们,不需要的时候自动关闭上下文对象。需要注意的是:使用with语法糖是有条件的。即其后跟的对象必须要实现__enter__和__exit__这2个魔法属性。
ElSE语法糖
Python中提供一类else的语法,它可以在原有语法基础之上,支持更多一种情况的选择。主要有for-else,while-else,try-else。需要注意的是,for-else和while-else需要和break语句配合时使用。
yiedld表达式
yield语法也是Python中比较有特点的语法糖,可以说是特有的。虽然其它语言有实现类似机制的功能。yield是Python中实现**协程(coroutine)**的一个重要基础。
1.
2.装饰器是学习Python绕不过去的坎。就像学习Java要理解面向对象和设计模式一样。学习Python,你就应该要掌握好闭包、生成器、装饰器等相关知识。而对于编写高并发程序时则要掌握协程相关知识。