美文网首页
Python语法有趣之处

Python语法有趣之处

作者: 贾建西 | 来源:发表于2018-03-05 20:02 被阅读0次

一、交换两个变量的值

1、通常的处理方式是借用中间变量,例如C语音:

temp = a;

a = b;

b = temp; 

原理打个比方,要交换杯子a和杯子b中的水,可以借用一个空杯子temp,第一步将a杯中的水倒入temp杯子中,然后将b杯子中的水倒入空杯子a中,最后将temp杯子中的水倒入空杯子b中,完成a和b杯子水的交换。

2、python对交换a和b的值,用元组语法处理很是简便

a, b = b, a

二、三元运算

1、通常使用三目运算符,例如C语言

int x = a > b ? a = b;

2、对应python的语法糖

x = a > b and a or b;

3、官方建议的书写方式

x = a if a > b else b

三、短路功能

与关系:a and b,若a为False,则程序不会执行b代码块

或关系:a or b,若a为True,则程序不会执行b代码块

利用and和or的短路功能,一些消耗性能的操作可以写在b代码块里,若a条件不满足造成短路,则不会执行b,提升性能。

四、连续的关系运算符

例如C语言,表示两段关系运算用and或者or连接起来

if (a > b  and  b > c)

python接近数学的自然写法

if  a > b > c :

五、生成式和生成器

 1、列表生成式:读取元素速度快,占用空间大

              [x for x in rang(n)]

2、生成器:读取元素速度慢,占用空间小

(1)、方式一:

               (x for x in range(n))

(2)、方式二:

         def fib(a):

                  a, b = 0, 1

                  for _ in range(n):

                             a, b = b,  a + b

                             yield a

                    for val in fib(20):

                               print(val)

相关文章

网友评论

      本文标题:Python语法有趣之处

      本文链接:https://www.haomeiwen.com/subject/qoxkfftx.html