昨晚有读者问行哥有没有保留字总结,这不它来了
关键字
保留字也称为关键字,指被编程语言内部定义并保留使用的标识符,程序员编写程序时不能定义与保留字相同的标识符。每种程序设计语言都有一套保留字,保留字一般用来构成程序整体框架、表达关键值和具有结构性的复杂语义等。掌握一门编程语言首先要熟记其所对应的保留字。
False await else import pass None break except in raise True class finally is return and continue for lambda try as def from nonlocal while assert del global not with async elif if or yield
一共有35个关键字,行哥来分门别类的给大家介绍一下,有不认识的可以给自己补充一下了
1. True、False
2. and、or、not
3.class
4.is、in
5.try、except、finally、raise
6.if、elif、else
7.def、global、nonlocal、return、yield
8.for、while
9.break、continue
10.assert
11.del
12.import、from、 as
13.with
14.pass
15.await、async
16.lambda
1. True、False
False 布尔类型的值,表示假,与True相反 True 布尔类型的值,表示真,与False相反
2. and、or、not
逻辑运算符 与、或、非
3.class
定义类的关键字
4.is、in
Python中的对象包含三个要素:id,type,value 其中:
id:用来唯一标识一个对象
type:标识对象的类型
value:是对象的值
is:就是用来判断a对象是否就是b对象,是通过id来判断的
==:判断的是a对象的值是否和b对象的值相等,是通过value来判断的
in:判断变量是否存在序列中
5.try、except、finally、raise
使用try...except...finally语句来处理异常。
通常的语句块放在try块中
错误处理的语句放在except块中
始终执行的语句放在finally块中
raise 语句抛出一个指定的异常。
try: #some code here raise MyException except MyException: print("MyException encoutered") finally: print("Arrive finally") x = 10 if x > 5: raise Exception('x 不能大于 5。x 的值为: {}'.format(x))
6.if、elif、else
判断语句,if语句用来检验一个条件,如果条件为真,运行一块语句(称为if…块),否则处理另外一块语句(称为else…块)。else从句是可选的
7.def、global、nonlocal、return、yield
def 定义函数的关键字
global 定义全局变量
nonlocal 在局部寻找外层函数中离他最近的那个变量
return 函数中的返回值
yield的用法有点像return,除了它返回的是一个生成器
def createGenerator(): mylist = range(3) for i in mylist: yield i*i
8.for、while
for循环可以遍历任何序列的项目,如一个列表或者一个字符串 while循环可以通关判断条件真假无限循环
9.break、continue
break语句是用来终止循环语句,即使哪怕循环条件没有称为false或者序列还没有被完全递归,也会停止循环
continue语句被用来跳过当前循环块中的剩余语句,继续进行下一轮循环
10.assert
assert 关键字用于在代码中设置检查点,用于当程序出现错误时中断程序执行。
>>> a = 3 >>> assert 0 < a < 10 >>> a = 20 >>> assert 0 < a <10 Traceback (most recent call last): File "<pyshell#3>", line 1, in <module> assert 0 < a <10 AssertionError # assert 条件后可以增加错误信息解释 >>> a = 20 >>> assert 0 < a < 10, '超出范围!' Traceback (most recent call last): File "<pyshell#5>", line 1, in <module> assert 0 < a < 10, '超出范围!' AssertionError: 超出范围!
11.del
del删除变量或者序列的值
a = [-1,3,'aa',85] # 定义一个list del a[0] # 删除第0个元素 del a[2:4] # 删除从第2个到第3个元素。
12.import、from、 as
用于导包,as为重命名
from turtle import fd as f
13.with
用于文件的读写
# 写文件 with open("test.txt", "wt") as out_file: out_file.write("公众号:一行数据,没想到吧,这里有植入")
14.pass
pass空的类,函数,方法的占位符
15.await、async
async 用来声明一个函数为异步函数,异步函数的特点是能在函数执行过程中挂起,去执行其他异步函数,等到挂起条件(假设挂起条件是sleep(5))消失后,也就是5秒到了再回来执行。
await 用来用来声明程序挂起,比如异步程序执行到某一步时需要等待的时间很长,就将此挂起,去执行其他的异步程序。
async def test2(i): r = await other_test(i) print(i,r) async def other_test(i): r = requests.get(i) print(i) await asyncio.sleep(4) print(time.time()-start) return r url = ["https://segmentfault.com/p/1210000013564725", "https://www.jianshu.com/p/83badc8028bd", "https://www.baidu.com/"] loop = asyncio.get_event_loop() task = [asyncio.ensure_future(test2(i)) for i in url] start = time.time() loop.run_until_complete(asyncio.wait(task)) endtime = time.time()-start print(endtime) loop.close()
16.lambda
通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是匿名函数
<函数名> = lambda <参数> : <表达式>
f = lambda x, y, z: x+y+z #f是表达式的名字 >>> f(1,2,3) #像函数一样调用