首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一日一技:用实例列举python中所有的关键字(01)

Python关键字列表

本教程提供有关Python中使用的所有关键字的简要信息。

关键字是Python中的保留字。我们不能将关键字用作变量名,函数名或任何其他标识符。

以下是Python中所有关键字的列表(35个):

以上关键字可能会在不同版本的Python中出现更改。 因此,可能会添加一些或将某些内容删除。

不过,我们可以通过在提示符下输入以下信息来获取当前版本中的关键字列表。

>>> import keyword>>> print(keyword.kwlist)['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

Python关键字的示例说明

True和False

True和False是Python中比较操作或逻辑(布尔)操作的结果。

代码示例如下:

>>> 1 == 1True>>> 5 > 3True>>> True or FalseTrue>>> 10 False>>> 3 > 7False>>> True and FalseFalse

在上面代码中,我们可以看到前三个语句输出为True,剩余三个语句返回False。

另外,python中的True和False与1和0相同。这可以通过以下示例进行说明:

>>> True == 1True>>> False == 0True>>> True + True2

None值

None值是Python中的一个特殊常量,表示没有值或空值。

它是自己的数据类型NoneType的对象。我们不能创建多个None对象,但可以将其分配给变量。这些变量互相等。

不过,我们必须注意,None并不表示False,0或任何空列表,字典,字符串等。例如:

>>> None == 0False>>> None == []False>>> None == FalseFalse>>> x = None>>> y = None>>> x == yTrue

不返回任何内容的空函数将自动返回None对象。程序流未遇到return语句的函数也不返回任何值。例如:

def a_void_function(): a = 1 b = 2 c = a + b

x = a_void_function()print(x)

输出

None

上述程序尽管在内部执行了一些操作,但其函数不返回值。因此,当我们打印x时,我们得到None值,它会自动(隐式地)返回。同样,以下是另一个示例:

def improper_return_function(a): if (a % 2) == 0: return True

x = improper_return_function(3)print(x)

输出

None

尽管此函数带有return语句,但并非在每种情况下都可以实现。仅当输入为偶数时,该函数才会返回True。

如果我们给函数传入一个奇数值,则会返回None。

and,or,not

and,or,not是Python中的逻辑运算符。并且只有两个操作数都为True时,结果才为True。

and:

or:

not:

下面给出用法示例:

>>> True and FalseFalse>>> True or FalseTrue>>> not FalseTrue

as

as用于在导入模块时创建别名。这意味着在导入模块时给模块一个不同的名称(用户可以自定义)。

例如,Python有一个math模块。假设我们要使用别名来计算余弦pi。我们可以使用以下方法:

>>> import math as myAlias>>>myAlias.cos(myAlias.pi)-1.0

在上面代码中,我们通过将其命名为myAlias导入了数学模块。现在,我们可以使用该名称引用数学模块。使用该名称,我们计算了cos(pi)并得到-1.0。

assert

assert用于调试目的。

在写编程时,有时我们希望了解内部状态或检查我们的假设是否正确。assert可以帮助我们做到这一点,更方便地发现错误。assert后跟一个条件语句。

如果条件为真,则什么也不会发生。如果条件为假,则会引发AssertionError。例如:

>>> a = 4>>> assert a < 5>>> assert a > 5Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in AssertionError

为了更好地理解,我们可以提供一条message,该message将与AssertionError一起打印出来。

>>> a = 4>>> assert a > 5, "The value of a is too small"Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in AssertionError: The value of a is too small

在这一点上,我们可以注意到,

assert condition, message

等价于

if not condition: raise AssertionError(message)

async和await

async和await关键字由Python中的asyncio库提供。它们用于在Python中编写并发代码。例如

import asyncio

async def main(): print('Hello') await asyncio.sleep(1) print('world')

要运行该程序,我们使用

asyncio.run(main())

在上述程序中,async关键字指定该函数将异步执行。

在这里,首先打印Hello。await关键字使程序延迟等待1秒。然后world被打印出来。

break和continue

在for和while循环内部使用break和continue语句来更改其正常行为。

break语句将结束它所在的最小循环,并且控制权流到该循环正下方的语句。continue语句导致结束循环的当前迭代,但不结束整个循环。

我们可以通过两个示例进行说明:

for i in range(1,11): if i == 5: break print(i)

输出

1234

在上面,for循环打印1到10的数字。但是,当i等于5且我们从循环中中断时,满足if条件。因此,仅打印范围1到4。

for i in range(1,11): if i == 5: continue print(i)

输出

1234678910

在这里,我们对同一程序使用continue语句。因此,当满足条件时,将跳过该迭代。但是我们不会退出循环。因此,将打印除5以外的所有值。

class

class用于在Python中定义新的用户定义类。

类是代表现实情况的相关属性和方法的集合。将数据和函数放在一个类中的想法对于面向对象编程(OOP)的概念至关重要。

可以在程序中的任何位置定义类。但是,在模块中定义单个类是一个好习惯。以下是示例用法:

class ExampleClass: def function1(parameters): … def function2(parameters): …

def

def用于定义用户自定义的函数。

函数是一组相关语句,它们一起执行特定程序。它帮助我们将代码组织成可管理的块,并完成一些重复的任务。

def的用法如下所示:

def function_name(parameters): …

del

del用于删除对对象的引用。一切都是Python中的对象。

我们可以使用del删除变量引用,例如:

>>> a = b = 5>>> del a>>> aTraceback (most recent call last): File "", line 301, in runcode File "", line 1, in NameError: name 'a' is not defined>>> b5

在这里我们可以看到变量a的引用已删除。因此,不再定义。但是b仍然存在。

del还用于从列表或字典中删除元素:

>>> a = ['x','y','z']>>> del a[1]>>> a['x', 'z']

if,else,elif

if,else,elif用于条件分支或决策。

当我们要测试某种条件并仅在条件为真时才执行语句块时,则使用if和elif。elif是else if的缩写。else是条件为False时执行的语句块。

通过以下示例将很清楚:

def if_example(a): if a == 1: print('One') elif a == 2: print('Two') else: print('Something else')

if_example(2)if_example(4)if_example(1)

输出

TwoSomething elseOne

在上面,该函数检查输入数字,并显示结果是1还是2。否则,任何输入都会导致代码的else部分代码执行。

except, raise, try

except, raise, try与Python中的异常一起使用。

异常基本上是错误,表明在执行我们的程序时出现了问题。IOError,ValueError,ZeroDivisionError,ImportError,NameError,TypeError等是Python中异常的一些示例。try ... except块用于捕获Python中的异常。

我们可以使用raise关键字显式引发异常。以下是一个示例:

def reciprocal(num): try: r = 1/num except: print('Exception caught') return return r

print(reciprocal(10))print(reciprocal(0))

输出

0.1Exception caughtNone

在这里,函数reciprocal()返回输入数字的倒数。

当我们输入10时,将得到0.1。但是,当我们输入0时,会引发ZeroDivisionError。

这是由我们的try ... except块捕获的,我们返回None。我们还可以通过检查输入并按如下所示在其他地方处理它来引发ZeroDivisionError:

if num == 0: raise ZeroDivisionError('cannot divide')

finally

finally与try ... except块一起使用,以关闭资源或文件流。

使用finally可以确保即使有未处理的异常也可以执行其中的代码块。例如:

try: Try-blockexcept exception1: Exception1-blockexcept exception2: Exception2-blockelse: Else-blockfinally: Finally-block

在这里,如果try语句块中出现异常,则在except或else块中对其进行处理。但是无论执行顺序是什么,我们都可以放心执行。

即使出现错误,finally块也会执行。这对于清理资源很有用。

for

for用于循环。通常,当知道循环次数时,我们使用。

在Python中,我们可以将其与任何类型的序列(如列表或字符串)一起使用。 以下是一个示例,使用for遍历名称列表:

names = ['John','Monica','Steven','Robin']for i in names: print('Hello '+i)

输出

Hello JohnHello MonicaHello StevenHello Robin

希望这篇文章对你们有用,

欢迎在下方讨论留言,

谢谢关注.

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200726A0PIWN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券