前言

到python3.6为止,python内置的关键字有33个,比python2.7的版本多了2个。下面总结一下python3的关键字的使用。

python内置关键字

解释器在加载上下文的时候,如果遇到一些预先设定的变量值,就会触发解释器内置的一些操作,这些预定的变量值就是关键字。

查看关键字

查看当前版本的关键字信息,使用:

help("keywords")

# python3结果
False def if raise
None del import return
True elif in try
and else is while
as except lambda with
assert finally nonlocal yield
break for not
class from or
continue global pass # python2结果
and elif if print
as else import raise
assert except in return
break exec is try
class finally lambda while
continue for not with
def from or yield
del global pass

python3去掉了python2的exec、print关键字,增加了False,None,True,nonlocal关键字;

用来定义的关键字

def : 定义一个函数或方法;
class: 定义一个类对象;
lambda:定义一个匿名函数;

布尔关键字

False:代表真;
True:代表假; print(1 == True) # True
print(0 == False) # False print(isinstance(False, object)) # True
print(isinstance(True, object)) # True
print(isinstance(False, int)) # True
print(isinstance(True, int)) # True

在解释器中,False和True是一个变量,它们的值为0和1;但py2和py3对False和True有所不同,py2中False、True、None都是定义在builtins模块中的变量,因此可以随时修改它们代表的值,但py3中,False、True、None直接代表解释器中的关键字变量,它们的值是固定的。

控制流关键字

if...elif...else...:条件判断;
for...in...:对可迭代对象循环遍历
for...in...else...:遍历正常完成则执行else后的代码;
continue:终止本次循环,继续下一次循环;
break:跳出循环;
while:循环结构;

逻辑判断关键字

and:表示与
or:表示或;
not:表示非;
in:判断元素是否在容器内;
not in:判断元素是否不再容器内;
is:比较两个变量的内存地址;

扩展:is关键字比较两个变量的内存地址,==比较两个变量的值;

a = [123]
b = [123]
print(a is b) # False
print(a == b) # True

异常

try:
代码1
except:
代码2
else:
代码3
finally:
代码4... # 代码1发生异常就执行代码2,正常就执行代码3,无论正常与否都要执行代码4. raise:主动触发异常;

命令空间

global:将模块空间变量引入到局部空间修改;
nonlocal:将本局部空间的外层空间变量引入到本层局部空间修改,用来嵌套函数内;

其他

None:代表空,是python解释器的一个内置的关键字变量;本质是一个object()
from ... import ...:从模块导入对象
import ... :导入模块
import ... as ...:导入模块指定别名
with:触发上下文管理器;
assert:断言,True则通过,False则触发异常;
pass:表示跳过,用来防止报错;
return:函数返回值;
yield:生成器关键字;
del:从上下文堆栈中删除某个对象。
print(isinstance(None, object)) # True

总结

  1. 了解python2和python3关键字的异同;

  2. 注意False、True、None在python2中表示内置模块的变量,在python3中是解释器的内置关键字。

  3. False、True、None本质都是object对象,False、True属于int对象,None属于空object对象。

python基础之常用关键字总结的更多相关文章

  1. 十八. Python基础(18)常用模块

    十八. Python基础(18)常用模块 1 ● 常用模块及其用途 collections模块: 一些扩展的数据类型→Counter, deque, defaultdict, namedtuple, ...

  2. python基础31[常用模块介绍]

    python基础31[常用模块介绍]   python除了关键字(keywords)和内置的类型和函数(builtins),更多的功能是通过libraries(即modules)来提供的. 常用的li ...

  3. Java SE 基础:常用关键字

    Java SE 基础:常用关键字 常用关键字表

  4. python基础(常用内容)

    python基础(常用内容) 机器数: 一个数在计算机中的二进制表示形式就是机器数. 例如: +3用机器数表示就用<00000011>表示 -3用机器数表示就用<10000011&g ...

  5. 【python基础】常用的内置函数

    python基础之内置函数 参考: http://www.runoob.com/python/python-built-in-functions.html -zip() zip函数接受任意多个(包括0 ...

  6. Python全栈开发之路 【第六篇】:Python基础之常用模块

    本节内容 模块分类: 好处: 标准库: help("modules") 查看所有python自带模块列表 第三方开源模块: 自定义模块: 模块调用: import module f ...

  7. Python基础之--常用模块

    Python 模块 为了实现对程序特定功能的调用和存储,人们将代码封装起来,可以供其他程序调用,可以称之为模块. 如:os 是系统相关的模块:file是文件操作相关的模块:sys是访问python解释 ...

  8. python基础之常用模块以及格式化输出

    模块简介 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...

  9. Day5 - Python基础5 常用模块学习

    Python 之路 Day5 - 常用模块学习   本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shel ...

随机推荐

  1. Object的所有方法

    Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象.它将返回目标对象. const object1 = { a: 1, b: 2, c: 3 }; const ...

  2. [转帖]UTC时间、GMT时间、本地时间、Unix时间戳

    UTC时间.GMT时间.本地时间.Unix时间戳 https://www.cnblogs.com/xwdreamer/p/8761825.html 引用: https://blog.csdn.net/ ...

  3. ibufds原语

    低压差分传送技术是基于低压差分信号(Low Volt-agc Differential signaling)的传送技术,从一个电路板系统内的高速信号传送到不同电路系统之间的快速数据传送都可以应用低压差 ...

  4. Vs2010项目升级到Vs2015时的一些修改

    之前的C++/cli项目, Civil 3D版本为2014, 现在需要升级到2018版, 在升级的过程中遇到了一些问题: 为了备忘, 记录如下: Vcproj文件中进行了一些修改, 为了跟多版本项目的 ...

  5. 【系统】libevent库学习

    Libevent库 是一个用C语言开发的.轻量级的开源高性能事件通知库,主要功能特点如下: 事件驱动(event-driven),高性能; 注册事件分优先级: 支持 I/O,定时器和信号等事件信息: ...

  6. 爬虫保存cookies时重要的两个参数(ignore_discard和ignore_expires)的作用

    两个参数的作用: 官方的解释: ignore_discard: save even cookies set to be discarded. ignore_expires: save even coo ...

  7. HDU 5968(异或计算 暴力)

    题意是在一个数列中找到一段连续的子串使其异或值与所给值最接近,求出子串长度,若有多组结果,输出最大长度. 做题之前一定多注意数据范围,这道题就可以直接暴力,用数组 p[ i ][ j ] 表示长度为 ...

  8. NOI-OJ 2.2 ID:8758 2的幂次方表示

    思路 可以把任意一个数转化为2^a+2^b+2^c+...+2^n 例如137的二进制为10001001,这就等效于2^7+2^3+2^0 以上结果如何通过程序循环处理呢?需要把数字n分解为上述公式, ...

  9. 第四节: Quartz.Net五大构件之Trigger通用用法(常用方法、优先级、与job关联等)

    一. 简介 1. 几个类型: ①:TriggerBuilder:用来创建ITrigger实例 ②:ITrigger:触发器实例 2.常用的几个方法 ①.StartNow:Trigger马上触发. ②. ...

  10. 第十节:数据批注(DataAnnotationModel)和自定义验证(包括Model级别的验证)

    一. 简介 写完上一个章节MVC中的常用特性,迫不及待将该系列补全,该章节主要介绍数据批注(也叫:注解). 一听[数据批注],好高大上的名字,但仔细一看,它们其实是[System.ComponentM ...