python3编程基础之一:关键字
在学习编程的过程中每种语言都会有一些特殊的字母组合在本语言中表示特定的含义,这种字母组合就是关键字。原则上,关键字是无法被重复定义的,否则,语言在应用中,就无法正确确定标号的意义了。
1、关键字的获取:
在python环境中,使用命令:help("keywords")
2、python3关键字列表
False class from or
None continue global pass
True def if raise
and del import return
as elif in try
assert else is while
async except lambda with
await finally nonlocal yield
break for not
3、可以查看每个关键字的具体帮助信息:
命令:help('False')
4、共有关键字34个
python3去掉了python2的exec、print关键字,增加了False,None,True,nonlocal关键字;
5、分类介绍关键字
用来定义的关键字
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
总结
了解python3关键字的;
注意False、True、None在python2中表示内置模块的变量,在python3中是解释器的内置关键字。
False、True、None本质都是object对象,False、True属于int对象,None属于空object对象。
- 实际上,通过/usr/lib/python3.7/keywords.py来搞定python3中的关键字,可以查看其源码。
主要参看文献:https://docs.python.org/3/的中文版
最新文章
- POJ 3254. Corn Fields 状态压缩DP (入门级)
- 字符串截取函数-c语言
- 【前端也要学点算法】快速排序的JavaScript实现
- IOS第12天(2,UINavigationController导航控制器)
- Core Java Interview Question Answer
- android下调试unity3d应用
- Mysql新建用户和数据库并授权
- c#分支语句;循环语句(随堂练习)
- JS中有关分支结构、循环结构以及函数应用的一些简单练习
- poj2331 (IDA*)
- Java数据类型与运算符
- 无根树的计数——prufer序列
- 当时钟事件声明为过程变量 让system.threading.timer时钟失效
- Java 8 – Convert List to Map
- 带分数dfs+剪枝优化
- Python中操作HTTP请求的urllib模块详解
- OutOfMemoryError(内存溢出)解决办法
- [转]乔布斯的薄伽梵歌 Steve’s Bhagavat Gita
- BZOJ 2157 旅行(树链剖分码农题)
- 「日常训练」Balancing Act(POJ-1655)