编程语言中的关键字(keywords)和保留字(reserved words)
关键字(keywords)是编程语言的一部分,具有特殊含义和预定义功能。它们在语法上有固定的用法,关键字通常用于语言本身提供的结构和功能,例如控制流语句(如if、else、while)、数据类型声明(如int、string、boolean)等。编程语言中的关键字通常是事先定义好的,开发者无法重新定义或修改它们。
保留字(reserved words)是指在当前版本的编程语言中被保留但尚未使用的标识符。这些标识符不能被开发者用作变量名、函数名或其他自定义标识符。它们可能在将来的语言版本中被引入并具有特定的功能。保留字的存在是为了防止开发者在代码中使用这些标识符,以免与将来的语言更新产生冲突。虽然保留字目前没有特定的用途,但可能会成为关键字。
可以说关键字是保留字的一个子集。所有的关键字都是保留字,但并非所有的保留字都是关键字。
在编程语言中,关键字和保留字是两个相关但稍有不同的概念。在大多数情况下,关键字和保留字可以被视为同义词,表示编程语言中具有特殊含义的保留词汇。因此,严格区分关键字和保留字并不是必需的。
☆ Python的关键字可以通过keyword标准模块来获取。在Python中,有一个内置的keyword模块,提供了一个名为kwlist的列表,其中包含了Python的关键字。你可以使用以下代码来查看Python的关键字:
import keyword
print(keyword.kwlist)
Python可以使用keyword标准库(模块)的iskeyword() 函数来测试标识符是否是保留的关键字。若是返回 True,否则返回 False。
例如
import keyword
keyword.iskeyword("def") #True
Python官方关键字链接https://docs.python.org/zh-cn/3/reference/lexical_analysis.html#keywords
☆ Java的关键字可以在Java语言规范(Java Language Specification)文档https://docs.oracle.com/javase/specs/ 搜索keyword
☆ C++的关键字可以在C++标准文档中找到。你可以查阅ISO/IEC发布的C++标准,其中包含了C++语言的规定和关键字定义。https://en.cppreference.com/w/cpp/keyword
☆ JavaScript的关键字https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Lexical_grammar#%E5%85%B3%E9%94%AE%E5%AD%97