我了解到函数应该执行明确定义的操作,并且应该根据它们的工作进行命名。例如,可以编写一个添加其两个参数的函数:
def adder(arg1, arg2):
return arg1 + arg2
此处, adder 具有明确定义的角色,其名称正是所做的。现在,如果将游戏循环实现为函数:
def mainloop(fps):
while True:
# DO STUFF
tick(fps)
说这个功能是做某事并具有明确定义的角色仍然是正确的吗?如果是这样,将循环实现为函数的优势究竟是什么,而不是将其留在全局范围内?
答案 0 :(得分:2)
由于实现细节,函数中的相同代码可以比在全局命名空间中运行得更快。
答案 1 :(得分:1)
将循环置于函数之外仍然是一种好的形式,没有任何问题。对于我自己的一个pygame项目,我必须这样做,因为否则存在范围问题。将它放入函数的一个优点是你可以从另一个python文件访问它:
from game import mainloop
mainloop(65)