简介
- Python设计目标之一是让代码具备高度的可阅读性。
缩进
- Python中缩进表示语句块的开始与结束。增加缩进表示语句块的开始,而减少缩进表示语句块的结束。根据PEP8的规定,使用4个空格来表示每级缩进。使用Tab字符和其他数目的空格虽然可以通过解释器,但不符合编码规范,偏向使用Tab字符可以设置文本编辑器将Tab键转换为4个空格。
标识符
- 标识符就是名字,可用于标识符的字符为:大写字母A至Z和小写字母a至z,下划线_以及数字0至9,但不能以数字开头。不能定义关键字标识符。
包含下划线的标识符有以下命名规则
类型 | 实例 | 备注 |
---|---|---|
单下划线开头 | _abc | 私有化属性或方法。通过from M import * 将不能导入。 |
单下划线结尾 | abc_ | 避免与Python关键字命名冲突 |
双下划线开头 | __abc | 避免与子类中的属性命名冲突,无法在外部直接访问(名字重整所以访问不到) |
双下划线开头双下划线结尾 | __abc__ | 用户名字空间的对象或属性。不能使用这样的方式命名变量或函数 |
关键字
- 关键字是保留标识符,不能用变量名、函数名或任何其他标识符。Python共有35个关键字。
|关键字|描述|关键字|描述|关键字|描述|关键字|描述|
|------|-----|-------|-----|-----|-----|-------|----|
|and|逻辑运算符|as|创建别名|assert|用于调试|break|跳出循环|
|class|定义类|continue|继续循环下一次迭代|def|定义函数|del|删除对象|
|elif|在条件语句中使用|else|条件语句结束|except|处理异常|false|布尔值|
finally|处理异常|for|创建循环|from|导入模块的方法|global|声明全局变量|if|写一个条件语句|
|import|导入模块|in|是否存在|is|是否相等|lambda|创建匿名函数|
|none|null值|nonlocal|声明非局部变量|not|非逻辑运算符|or|与逻辑运算符|
|pass|null语句|raise|产生异常|return|函数返回值|true|布尔值 ,是|
|try|异常处理|while|创建无限循环|with|简化异常处理|yield|结束函数,返回生成器|
逻辑运算符
- and:(与),只有两边的值都为True才会返回True,否则返回False.
- or:(或),只有两边的值都为False才会返回False,否则返回True.
- not:(非),值为True,返回False,值为False,返回True.
协程
- async:将普通函数和生成器函数包装成异步函数和异步生成器。
- await:挂起自身的协程,并等待另一个协程完成直到返回结果(只能出现在通过async修饰的函数中,否则会包SyntaxError错误)
布尔值
- False:等于不成立,等同于0
- True:等于成立,等同于1
循环
- break:跳出当前循环
- continue:继续循环下一次迭代
- for:创建for循环
- while:创建while循环
- in:for循环迭代序列,或者检查序列中是否存在值
类与函数
- class:定义一个类
- def:定义一个函数
- lambda:定义一个匿名函数
- return:退出函数并返回值
- yield:结束函数并返回生成器
条件语句
- assert:测试代码中的条件是否返回True,否则程序将引发AssertionError异常
- elif:等同于else if
- else:在条件为False时执行else下的代码块
- if:创建条件语句,并且仅当条件为True时,才允许执行代码块
异常
- except:在try...except块中使用了关键字except.定义try块引发错误时要运行的代码块
- finally:在try...except块中使用,它定义的代码块,在try...except...else块结束时运行,无论try块是否引发错误异常,都将执行finally块
- raise:抛出异常
- with:作用和使用try/finally语句一样,简化异常处理,通常处理文件相关的内容
- try:用于try...except块中,它定义了测试代码测试块是否包含任何错误
模块
- from:从模块中导入指定部分
- import:导入模块
- as:模块设置别名
变量
- global:声明全局变量
- is:判断两个变量是否相等
- nonlocal:声明非局部变量
其他
- del:删除对象
- None:表示null值
- pass:null语句(表示为空)
控制流和语句
控制流
- 顺序结构:从上到下顺序执行代码
- 分支结构:根据条件判断决定执行代码的分支
- 循环结构:让特定代码重复执行
赋值
- 等号 '='为赋值语句,支持同时给多个变量赋值,还可以通过赋值语句改变多个变量的值
判断
- 分支语句,当条件成立时做某件事,不成立时做另一件事。
循环
- while循环是让指定代码按照条件指定执行次数
结束循环
- 可以通过break或者continue来结束当前循环