006-人生苦短我用python--python的关键字(简述)

如何获得keyword的所有关键字:

import keyword

keyword.kwlist

执行结果:

>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']
>>>

False:假
None:空
True:真
and:并
as:相当于
assert:断言

assert len(lists) >=5,'列表元素个数小于5'
assert 2==1,'2不等于1'

async:异步函数(协程)

async def async_function():
    return 1

await:用来用来声明程序挂起,比如异步程序执行到某一步时需要等待的时间很长,就将此挂起,去执行其他的异步程序。

async def other_test(i):
     r = requests.get(i)
     print(i)
     await asyncio.sleep(4)
     print(time.time()-start)
     return r

break:语句用来终止循环语句
class:用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
continue:语句跳出本次循环,而break跳出整个循环
def:函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()
del:删除的是变量,而不是数据。参照
elif:

>>>num = 0
>>>if num > 0 :
>>>    print '这个数比0大'
>>>elif num < 0 :
>>>    print '这个数比0小'
>>>else :
>>>    print '这个数是0'

else

except

except: #捕获所有异常

except: <异常名>: #捕获指定异常

except:<异常名1,异常名2):捕获异常1或者异常2

except:<异常名>,<数据>:捕获指定异常及其附加的数据

except:<异常名1,异常名2>:<数据>:捕获异常名1或者异常名2,及附加的数据库

finally

def f():
    try:
        print 1
        return 1
    finally:
        print 0
        return 0

from:import会读取整个模块,所以必须进行定义后才能读取它的变量名;from将获取(或者是复制)模块特定的变量名。
global:如果在函数中没有再定义同名变量,可以在函数中当做全局变量使用
in:

letters = ['A','B','C','D','E','F','G']
if 'A' in letters:
    print('A'+' exists')
if 'h' not in letters:
    print('h'+' not exists')

lambda:

a,b = 5,3
func_list = [lambda x,y: x+y,lambda x,y: x-y,lambda x,y: x * y]
for func in func_list:
    print(func(a,b))

nonlocal:关键字用来在函数或其他作用域中使用外层(非全局)变量。

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

for letter in 'Python':
if letter == 'h':
pass
print('这是 pass 块')
else:
print('当前字母 :', letter)

raise:触发异常
我们可以使用raise语句自己触发异常

try:
     s = None
     if s is None:
         print "s 是空对象"
         raise NameError     #如果引发NameError异常,后面的代码将不能执行
     print len(s)  #这句不会执行,但是后面的except还是会走到
except TypeError:
     print "空对象没有长度"
 
s = None
if s is None:
    raise NameError 
print 'is here?' #如果不使用try......except这种形式,那么直接抛出异常,不会执行到这里

yield:python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield。有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用。参照

def fun():
for i in range(20):
    x=yield i
    print('good',x)

if __name__ == '__main__':
a=fun()
a.__next__()
x=a.send(5)
print(x)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值