想象一下,我们开车在路上,会看到各种各样的交通标志牌:比如“停车”、“禁止通行”、“右转弯”等等。这些标志牌都有特定的形状、颜色和含义,我们不能把它们当作普通的路牌来命名一条街道,也不能随便更改它们的意思。

在 Python 编程世界里,也有一套这样的“交通标志牌”,它们就是——关键字 (Keywords)

第一章:什么是关键字?

💡 通俗类比:

  • 关键字 (Keywords) 就像 Python 语言的**“特殊指令词”“魔法咒语”**。它们是 Python 预留的,有非常特殊的含义和用途。
  • 当 Python 看到这些词时,它就知道要执行一个特定的任务,或者理解程序的某种结构。
  • 最重要的一点: 正因为它们是特殊的,您不能把这些“特殊指令词”拿来给您的变量(还记得我们前面学的“盒子”吗?)、函数(后面会学到)或者其他任何东西起名字。就好像您不能把“停车”这个交通标志牌,拿去当成您家的门牌号一样。
第二章:找出 Python 的所有“特殊指令词”

Python 有多少这样的关键字呢?我们可以让 Python 自己把这些“特殊指令词”都列出来!

  1. 打开您的“编程工具”:
    无论是您之前用的在线 Python 编辑器,还是您电脑上安装的 Python 开发环境,都可以。

  2. 写下这段“获取关键字列表”的代码:
    请在代码输入区域,准确地敲入下面两行:

    import keyword # 导入一个叫做 'keyword' 的工具箱
    print("Python 的所有关键字在这里:")
    print(keyword.kwlist) # 使用工具箱里的 kwlist() 功能来列出所有关键字
    

    请注意:

    • import 也是一个关键字!它告诉 Python 我们要“借用”某个功能。
    • keyword.kwlist 意思是“去 keyword 这个工具箱里,找到 kwlist 这个列表”。
  3. 运行它,看到奇迹!
    找到编辑器界面上的“运行 (Run)”或“执行 (Execute)”按钮,点击它!

    您应该会在结果输出区域看到类似这样的内容(具体列表可能因 Python 版本略有不同):

    Python 的所有关键字在这里:
    ['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 列出了它所有的“特殊指令词”!这是一个长长的列表,里面有很多我们还没见过的词,但现在您知道它们都是 Python 的专属词汇了。

动手试试:

  • 把上面的代码保存下来,以后忘记了关键字有哪些,随时可以运行一下查看。

第三章:不听话的后果:使用关键字作为变量名会怎样?

还记得我们说关键字不能用来给变量起名字吗?如果您不小心“犯规”了会怎么样呢?Python 会马上“提醒”您!

  1. 输入以下“错误”代码:
    让我们故意犯个小错误,把 for 这个关键字(它用于循环,后面会学到)当作变量名来用:

    for = 10 # 尝试把 for 当作变量名
    print(for)
    
  2. 运行它,看看 Python 怎么“抱怨”:
    点击“运行 (Run)”按钮。

    您会看到类似这样的错误信息:

    File "<stdin>", line 1
    for = 10
        ^
    SyntaxError: invalid syntax
    

别担心!这是正常的!
当您看到 SyntaxError: invalid syntax 时,这通常意味着您写下的代码不符合 Python 的语法规则,就像您把“停车”标志牌放在了不该放的位置。这里的 invalid syntax 的意思就是“语法不正确”。

Python 在告诉您:“嘿,for 是我的一个特殊指令词,你不能用它来给变量命名!我搞不懂你想做什么了!”

小贴士: 编程中最常见的错误之一就是 SyntaxError。当您看到它时,先检查一下是不是打错了字,或者是不是把关键字当成了变量名。


第四章:如何一眼认出关键字?

虽然现在关键字列表很长,您不需要立刻记住所有。但有几种方法可以帮助您快速识别它们:

  1. 代码编辑器的“变色魔法” (Syntax Highlighting):
    您使用的在线编辑器或专业的编程工具(叫做集成开发环境,简称 IDE,比如 VS Code)都有一个很棒的功能:它们会自动给代码中的关键字“涂上颜色”!通常,关键字会显示为蓝色、紫色或其他醒目的颜色,一眼就能看出来。

    • 比喻: 就像交通标志牌一样,它们总是有特殊的颜色和形状,让你一眼就能认出来它们的特殊身份。
  2. Python 的“抱怨声” (SyntaxError):
    就像我们刚刚看到的,如果您不小心把关键字用错了地方,Python 会立刻发出 SyntaxError 的警告。这是 Python 在提醒您:“这个词不能这么用!”


第五章:关键字的“大家庭”:功能分类

虽然关键字有很多,但我们可以根据它们的功能,把它们分成几类。这能帮助我们更好地理解 Python 的结构。现在您不需要深入理解每个词的具体用法,只需要知道它们大概是干什么用的就行了。

以下是常见的几类关键字(对照您刚才运行 keyword.kwlist 看到的结果):

  1. 表示“值”的关键字:

    • True:表示“真”,通常用于逻辑判断,比如“这个条件成立吗?”答案是 True
    • False:表示“假”,与 True 相反。
    • None:表示“空”或者“没有值”,它不是 0,也不是空字符串 "",它就是“什么都没有”。
  2. 用于“逻辑运算”或“关系判断”的关键字:

    • and:表示“并且”,当两个条件都为真时才为真。
    • or:表示“或者”,当至少一个条件为真时就为真。
    • not:表示“非”,把真的变假,假的变真。
    • is:判断两个东西是不是同一个。
    • in:判断一个东西是否在另一个东西里面(比如判断一个字母是否在一个单词里)。
  3. 控制程序“流程”的关键字:

    • if, else, elif:用于做“如果…就…否则…”这样的条件判断。
    • for, while:用于重复执行某些任务(循环)。
    • break:跳出循环。
    • continue:跳过本次循环的剩余部分,进入下一次循环。
    • pass:一个空操作,表示“什么也不做”,当代码块必须存在但暂时无需实现时使用。
    • try, except, finally, raise, assert:用于处理程序中可能出现的错误(异常处理)。
  4. 定义“功能块”或“蓝图”的关键字:

    • def:用于定义一个函数(一段可重用的代码)。
    • return:从函数中返回一个结果。
    • class:用于定义一个类(创建对象的蓝图,更高级的概念)。
    • lambda:定义一个简单的、匿名的函数。
    • yield:用于生成器函数(一种特殊的函数,也比较高级)。
  5. “借用”其他工具的关键字:

    • import:导入其他模块(工具箱)。
    • from:从某个模块中导入特定的功能。
    • as:给导入的模块或功能起一个别名(小名)。
  6. “变量作用范围”的关键字:

    • global:声明一个变量是全局变量(在程序任何地方都能访问)。
    • nonlocal:声明一个变量是非局部变量(在嵌套函数中,访问外层函数的变量)。
  7. “高级异步编程”的关键字:

    • async, await:用于编写并发(同时处理多个任务)程序,初学阶段暂时不用理会。

第六章:关键字 vs. 标识符 vs. 变量:分清“特殊”与“普通”

我们来总结一下这三个容易混淆的概念:

特征关键字 (Keywords)标识符 (Identifiers)变量 (Variables)
身份Python 语言中有特殊含义的保留词你给程序中的东西(变量、函数、类等)起的名字用于存储数据的“盒子”,它有一个标识符作为名字
命名规则固定不变,不能被你使用遵循特定规则(字母、数字、下划线,不能数字开头),不能是关键字遵循标识符的命名规则,不能是关键字
例子if, else, for, while, Trueage, my_name, calculate_sum, MyClassage = 25, my_name = "小明"
可否修改不能重新定义或改变含义你可以定义和重新定义里面存储的数据可以被修改(换成新的“东西”)
作用定义 Python 的语法结构和逻辑让程序中的各种元素有一个易于理解和引用的名字在程序运行时持有并管理数据

总结一下:

  • 关键字是 Python 语言的“法律条文”,是神圣不可侵犯的。
  • 标识符是你根据“法律条文”允许的范围,给你的“私有财产”(比如变量、函数)起的名字。
  • 变量就是你的“私有财产”本身,它通过一个“标识符”被大家认识。

恭喜你!你做到了!

现在,您已经对 Python 关键字有了初步的了解:

  • 您知道它们是特殊的保留词。
  • 您知道它们不能用作变量名,否则会引发 SyntaxError
  • 您知道如何获取所有关键字列表。
  • 您了解了关键字的不同类别,虽然还不需要记住所有用法。
  • 您区分了关键字、标识符和变量。

这些知识是您继续学习 Python 的坚实基础!在未来的学习中,我们会慢慢地遇到并掌握这些关键字的具体用法。现在,您只需要记住它们是特殊的,不能随便使用。

您不需要立即记住所有关键字,但要知道它们是特殊的,不能乱用。我们会在未来的学习中慢慢遇到它们,并掌握它们的用法。您已经迈出了重要的一步!

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐