目录

Python学习之路-语法

简介

Python的设计目标之一是让代码具备高度的可阅读性。在设计时尽量使用经常使用的标点符号和英文单字,让代码看起来整洁美观。

缩进

在Python中缩进表示语句块的开始和结束,作用等同于Java、Go中的大括号。增加缩进表示语句块的开始,而减少缩进则表示语句块的结束。缩进成为了语法的一部分,违反了“缩进规则”的程序不能通过解释器解释。

提示
根据PEP 8的规定,使用4个空格来表示每级缩进。使用Tab字符和其它数目的空格虽然都可以被解释器识别,但不符合编码规范,偏向使用Tab字符的程序员可以设置文本编辑器将Tab键转换为4个空格。

标识符

标识符就是名字。可用于标识符的字符为:大写字母AZ和小写字母az,下划线_以及数字09,但不能以数字开头。不能定义关键字标识符。

有关包含下划线的标识符有以下命名约定:

类型 实例 备注
单下划线开头 _abc 私有化属性或方法。通过from M import *将不能导入。
单下划线结尾 acb_ 避免与python关键字的命名冲突。
双下划线开头 __abc 避免与子类中的属性命名冲突,无法在外部直接访问(名字重整所以访问不到)
双下划线开头双下划线结尾 __abc__ 用户名字空间的魔法对象或属性。例如:__name__ , 不要使用这样的方式命名变量或函数。

关键字

关键字是保留标识符,不能用作变量名、函数名或任何其他标识符。Python共有35个关键字。

逻辑运算符

  • and:只有两边的值都为True才会返回True,否则只要两边有一个值为False,就返回False
  • not:如果值为True,返回False。如果值为False,返回True
  • or:只要两边有一个值为True,就返回True。只有两边的值都为False,才会返回False

协程

  • async:将普通函数和生成器函数包装成异步函数和异步生成器。
  • await:挂起自身的协程,并等待另一个协程完成直到返回结果(只能出现在通过async修饰的函数中,否则会报SyntaxError错误)

布尔值

  • False:不成立则为False,等同于0
  • True:成立则为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语句(什么都不做的语句)
提示
刚开始接触关键字不用详细了解具体含义,先记住这些关键字不要让标识符取成关键字,后面慢慢接触到这些关键字的时候边了解边使用就可以

控制流和语句

控制流

在程序开发中,存在三种控制流:

  • 顺序结构:从上到下顺序执行代码
  • 分支结构:根据条件判断决定执行代码的分支
  • 循环结构:让特定代码重复执行

根据控制流衍生出了各类语句

赋值

等号=为赋值语句,支持同时给多个变量赋值,还可以通过赋值语句改变多个变量的值。

判断

简介

又称为分支语句。当条件成立时做某件时间,不成立时做另一件事或者什么都不做。

用法

Python中的判断语句格式为:

1
2
3
4
5
6
if 条件1:
    满足条件1的代码块
elif 条件2:
		满足条件2的代码块
else:
		其他情况的代码块

通过if来发起判断语句,当if条件成立时执行if下的代码块,条件不成立时执行else下的代码块。当存在多个条件时可以通过elif来分隔各个条件,执行不同条件下的代码块。

循环

简介

while循环是让指定代码按照条件指定执行次数

用法

Python中的判断语句格式为:

1
2
3
4
while 条件(判断计数器是否达到目标次数):
    满足条件代码块
    ......
    处理条件(计数器+1)
技巧
Python计数从0开始
警告

Python计数从0开始

在使用while时要注意死循环的问题,由于某些原因,忘记在循环内部修改循环的判断条件,导致循环持续执行,程序无法终止!

结束循环

可以通过break或者continue来结束当前循环。

  • break:某一条件满足时退出循环
  • continue:某一条件满足时不执行当前循环,进行下一次循环