Python必须了解的35个关键词
作者:吃着东西不想停 发布时间:2023-05-20 07:37:33
每种编程语言都会有一些特殊的单词,称为关键词。对待关键词的基本要求是,你在命名的时候要避免与之重复。本文将介绍一下Python中的关键词。关键词不是内置函数或者内置对象类型,虽然在命名的时候同样也最好不要与这些重名,但是,毕竟你还可以使用与内置函数或者内置对象类型重名的名称来命名。关键词则不同,它是不允许你使用。
在Python3.8中提供了35个关键词,如下所示:
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
如果打算在交互模式里面查看关键词,可以使用help():
>>> help("keywords")
Here is a list of the Python keywords. Enter any keyword to get more help.
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
对每个关键词的详细说明,也可以用help()查看:
>>> help('pass') # 敲回车后出现下面的内容
The "pass" statement
********************
pass_stmt ::= "pass"
"pass" is a null operation — when it is executed, nothing happens. It
is useful as a placeholder when a statement is required syntactically,
but no code needs to be executed, for example:
def f(arg): pass # a function that does nothing (yet)
class C: pass # a class with no methods (yet)
除了上面的方法之外,还有一个标准库的模块keyword提供了关键词查询功能。
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', ...
>>> len(keyword.kwlist)
35
那么,这些关键词如何使用?在什么情景下应用?下面以示例的方式对部分关键词进行说明。
True、False和None
True和False是布尔类型的两个值,注意必须首字母大写。
>>> x = True
>>> x is True
True
>>> y = False
>>> y is False
True
如果我们要判断某个对象的布尔值是True还是False,可以使用bool()函数实现,例如:
>>> x = "this is a truthy value"
>>> x is True
False
>>> bool(x) is True
True
>>> y = "" # 这个是假
>>> y is False
False
>>> bool(y) is False
True
注意,如果向bool()传入的参数是0, "", {}, []中的任何一个,返回值都是False。
在条件语句中,本来是要判断条件是否为True,但是,通常不需要直接与True或者False进行比较,依靠Python解析器自动进行条件判断。
>>> x = "this is a truthy value"
>>> if x is True: # 不要这么做
... print("x is True")
...
>>> if x: # 应该如此写
... print("x is truthy")
...
x is truthy
None这个关键词,在Python中表示没有值,其他语言中,同样的含义可能会用null,nil,none,undef,undefined等。None也是函数中没有return语句的时候默认返回值。
>>> def func():
... print("hello")
...
>>> x = func()
hello
>>> print(x)
None>>> def func():
... print("hello")
...
>>> x = func()
hello
>>> print(x)
None
and、or、not、in、is
这几个关键词,其实都对应着数学中的操作符,如下表所示。
数据符合 | 关键词 |
AND, ∧ | and |
OR, ∨ | or |
NOT, ¬ | not |
CONTAINS, ∈ | in |
IDENTITY | is |
Python代码具有很强的可读性,通过关键词就能一目了然晓得是什么操作。
这几个关键词比较好理解,这里仅提醒注意在Python中有一个著名的短路运算,例如and:
<expr1> and <expr2>
不要将上面的式子理解成两边都是真的时候返回True。对此,在**《Python大学实用教程》**一书中有非常详细的说明,请参阅。另外一个就是or,也存在短路运算。
break、continue和else
这几个是经常用于循环语句的关键词。
break 的作用是终止当前循环,其使用的基本格式:
for <element> in <container>:
if <expr>:
break
举个例子:
>>> nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> sum = 0
>>> for num in nums:
... sum += num
... if sum > 10:
... break
...
>>> sum
15
continue则是要跳过某些循环,然后让循环继续。
for <element> in <container>:
if <expr>:
continue
else在条件语句中有,这里提到它,是在循环语句中,它的作用是当循环结束后还要继续执行的代码。
在for循环中,使用格式如下:
for <element> in <container>:
<statements>
else:
<statements>
在while循环中,使用格式如下:
while <expr>:
<statements>
else:
<statements>
例如,有时候我们要在循环语句中使用一个旗帜变量:
>>> for n in range(2, 10):
... prime = True
... for x in range(2, n):
... if n % x == 0:
... prime = False
... print(f"{n} is not prime")
... break
... if prime:
... print(f"{n} is prime!")
...
2 is prime!
3 is prime!
4 is not prime
5 is prime!
6 is not prime
7 is prime!
8 is not prime
9 is not prime
在上面的代码中,prime就是一个旗帜变量,如果循环正常结束,prime的值就是True,否则,就是False。如果从循环中退出了,第8行判断这个变量的值,如果为True则打印相应内容。
对于上面的代码,如果用else改写,可以更简洁,并且可读性更强。
>>> for n in range(2, 10):
... for x in range(2, n):
... if n % x == 0:
... print(f"{n} is not prime")
... break
... else:
... print(f"{n} is prime!")
...
2 is prime!
3 is prime!
4 is not prime
5 is prime!
6 is not prime
7 is prime!
8 is not prime
9 is not prime
来源:https://www.cnblogs.com/zwhy8/p/13182296.html


猜你喜欢
- 一、要求二、思路1.购物类buy接收 信用卡类 的信用卡可用可用余额,返回消费金额2.信用卡(ATM)类接收上次操作后,信用卡可用余额,总欠
- 前两天写了一篇《浅谈网站用户粘性的含义》的文章,有些个别网友问可否谈谈怎么样加强用户粘性的问题?虽然对此本人没有系统的理论做以支撑,但是既然
- 在准备学习python的PyQt5库时会遇到pyqt5-tools安装失败的情况。其中一种可能是版本不适配。Pycharm弹出显示:安装软件
- 1. 调试pythonipdb是用来python中用以交互式debug的模块,可以直接利用pip安装;其功能类似于pycharm中pytho
- 先给一个例子:假设在一个表单中有一个按钮id="save"$(document).ready(function(){&n
- 图片太大了,上百张图用photoshop改太慢,就想到用python写个简单的批处理。功能简单就是把原图按比例缩小# -*- coding:
- 前文学习:python数据结构:数据类型.python数据结构输入输出及控制和异常.今天我们来学习面向对象编程,面向对象这种编程方式非常重要
- 用Vue写了一个简单的时间钟,供大家参考,具体内容如下此时钟内容包括年月日及星期和时分秒。功能分析:1.年份,日期,时间的显示2.动态的变化
- PyTorch中还单独提供了一个sampler模块,用来对数据进行采样。常用的有随机采样器:RandomSampler,当dataloade
- 目录1、前言2、详解1、前言使用中如果我们想把python可识别对象的dict类型的数据通过str类型写入文件或者存入变量中就需要用到dum
- 前提:list以及array是python中经常会用到的数据类型,当需要对list以及array进行文件的读写操作的时候,由于write函数
- 求f(x) = sin(x)/x 的不定积分和负无穷到正无穷的定积分sin(x)/x 的不定积分是信号函数sig ,负无穷到正无穷的定积分为
- 报错代码粉丝群一个小伙伴想pandas创建DataFrame对象,但是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决
- golang 中多个 defer 的执行顺序引用 Ture Go 中的一个示例:package mainimport "fmt&q
- 装饰器其实一直是我的一个"老大难"。这个知识点就放在那,但是拖延症。。。其实在平常写写脚本的过程中,这个知识点你可能用到
- TensorFlow中的log共有INFO、WARN、ERROR、FATAL 4种级别。有以下几种设置方式。1. 通过设置环境变量控制log
- 前言最近这两天在看自己之前写的代码,所以正好把用过的东西整理一下,单例模式,在日常的代码工作中也是经常被用到,所以这里把之前用过的不同方式实
- 实现效果:方法一:1 print "+"+"-"*8+"+"+"-&q
- 使用Access数据库生成申报数据与读入数据的实例方法:示例:Sub Mwrite()On Error GoTo thiserrDim rs
- 前言使用python做一个加密资料的软件,可加密应用程序、文件、压缩包等多种文件格式,不可直接加密文件夹,可以先用压缩包打包在加密。加密后的