lambda不是python的保留字_Python中的保留字

Python 包含的保留字可以执行如下命令进行查看:

→import keyword

→keyword.kwlist

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

所有的保留字,如下表所示:

表 1 Python 保留字一览表

and

as

assert

break

class

continue

def

del

elif

else

except

finally

for

from

False

global

if

import

in

is

lambda

nonlocal

not

None

or

pass

raise

return

try

True

while

with

yield

需要注意的是,由于 Python 是严格区分大小写的,保留字也不例外。所以,我们可以说 if 是保留字,但 IF 就不是保留字。

1.and , or

and , or 为逻辑关系用语,Python具有短路逻辑,False and 返回 False

不执行后面的语句, True or 直接返回True,不执行后面的语句

2.del

删除变量

而列表本身包含的是变量,

3.from

from引用模块时会用到

4.golbal

golbal为全局变量,但当单个函数中出现同一变量名时,在单个函数中为局部变量

5.with

with被用来处理异常

紧跟with后面的语句被求值后,返回对象的enter()方法被调用,这个方法的返回值将被赋值给as后面的变量,此处为file

当with后面的代码块全部被执行完后,将调用前面返回对象的exit()方法

实际上,在with后面的代码块抛出任何异常时,exit()方法被执行。

正如例子所示,异常抛出时,与之关联的type,value和stack trace传给exit()方法,

因此抛出的ZeroDivisionError异常被打印出来了。

开发库时,清理资源,关闭文件等等操作,都可以放在exit方法当中。

6.while, for…in…

均为循环语句,使用while时要注意成立条件,防止陷入死循环

for in 遍历

7.assert

断言,声明其布尔值必须为真的判定,如果发生异常就说明表达示为假。

可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常。

8.pass

pass是空语句,为了保证程序结构的完整性,

pass不做任何事情,一般用作 占位语句

当你编写程序部分内容还没想好,可用pass语句占位

9.yield

yield的意思是生产,返回了一个生成器对象,每个生成器只能使用一次

一个带有 yield的函数就是一个generation,他和普通函数不同,生成一个generator看起来像函数调用,但不会执行任何函数代码,直到对其调用.next()(在 for 循环中会自动调用 next())才开始执行 虽然执行流程仍按函数的流程执行,但每执行到一个 yield 语句就会中断,并返回一个迭代值,下次执行时从 yield 的下一个语句继续执行。看起来就好像一个函数在正常执行的过程中被 yield 中断了数次,每次中断都会通过 yield 返回当前的迭代值。send() 与next()

10.break 与 contiue

Python break语句用来终止循环,用在while和for循环中!!直接跳出整个循环

嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码

break是跳出整个循环,continue是跳出当前循环

11.try except finally

如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。

如果在try后的语句里发生了异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印缺省的出错信息)。

如果在try子句执行时没有发生异常,python将执行else语句后的语句(如果有else的话),然后控制流通过整个try语句。

12.raise

触发异常

raise [Exception[,args[,traceback]]]

语句中Exception是异常的类型(例如,NameError)参数是一个异常参数值。

该参数是可选的,如果不提供,异常的参数是”None”。

最后一个参数是可选的(在实践中很少使用),如果存在,是跟踪异常对象。

raise 触发异常后,后面的代码就不会再执行

die函数,打印错误信息

13.exec–eval–execfile

exec 用来执行储存在字符串或文件中的Python语句

exec是一条语句将字符串str当成有效的python代码来执行

eval与execfile是pytho内置函数

eval(str[globals[locals]])函数将字符串str当成有效的python表达式来求值,并提供返回计算值

execfile(filename)函数可以用来执行文件

from os.path import exists

exists(file)将文件名字符串作为参数,如果文件存在返回True,否则返回False

14.return

return 是函数返回值

15.lambda—filter—map—reduce—

lambda 只是一个表达式,定义了一个匿名函数,起到函数速写的作用

由于lambda只是一个表达式,它可以直接作为python 列表或python 字典的成员,比如map(function, sequence)

对sequence中的item 依次执行 function,将执行结果组成list返回单个参数

多个参数,要求函数接受多个参数

reduce(function, sequence, starting_value)

对sequence中的item顺序迭代调用function,如果有starting_value,还可以作为初始值调用,例如可以用来对List求和

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值