我正在阅读并同时学习Python和C. (不要问我原因,这很有趣!:-))我使用Mark Lutz的"学习Python".以下是他在Python中编写函数的内容:
与C等编译语言不同,Python函数不需要在程序运行之前完全定义.更一般地,defs在到达并运行之前不会被评估,并且在稍后调用函数之前不会评估defs中的代码.
我不太清楚,因为在我的第二本书中,KNKing说你可以先声明一个函数然后再创建一个定义.
英语不是我的母语,所以我在这里缺少什么?
我只能做一个猜测,它与程序运行时有某种关系.在C中,编译器运行程序并找到函数声明.即使没有定义,编译器也会继续查找函数定义.C中的函数声明有助于避免函数的返回类型出现问题(默认情况下为int).另一方面,Python函数在运行时到达之前不会被评估.当达到它时,它不会在函数调用之前计算函数体.但这个猜测并没有解释上面的引用.
那么卢茨先生在谈论什么?我有点困惑......