语法分析和词法分析 发表于 2020-03-13 更新于 2022-01-20 分类于 Python 基础 Python 代码执行前,会经过两个方面的校验:语法分析和词法分析,从而避免运行时出现异常。 补充一点知识,下面这段代码: 1234def func(): print(foo)def func(): print(foo) 运行过后程序并没有报错,虽然并没有变量或者函数命名为 foo。这是因为程序运行过程中,会有两个分析过程:语法分析和词法分析。 词法分析就是分析代码中是否所有的词语都符合规范,如果不规范,则会报错。 语法分析则是判断每个语句是否合乎语法规范。 上面的两个代码,词法分析是可以的,语法分析因为不会进入到函数体中,所以也不会出错,故而没有报错。