什么是 Python 中的简单英语处理程序

use*_*512 5 python handler python-3.x

所以我问这个问题是因为在通过 Python 库、谷歌和 Stack Exchange 运行搜索时,我似乎找不到一个简单的措辞答案。

到目前为止我能找到的最好的是来自 wptserve:

“处理程序是具有通用签名的函数:

handler(request, response)
Run Code Online (Sandbox Code Playgroud)

预计处理程序将使用来自请求的信息(例如路径)来使用要发送的数据填充响应对象,或者通过与请求关联的 ResponseWriter 实例直接写入输出流。”

链接:https : //wptserve.readthedocs.io/en/latest/handlers.html

所以基本上,从我收集的信息来看,处理程序通过使用数据来响应用户请求,数据类型取决于请求的类型。

我相信它比那更复杂一点,但同样,真正需要的是一个非常简单的措辞,对处理程序是什么的概念性描述,没有花哨的术语。

nit*_*zel 9

通常,处理程序是“处理”它们注册的某些事件的函数。

您参考的文档是关于 Web 服务器的。网络服务器接收来自浏览器等 URL 的请求 - 并根据请求的内容返回答案。他们谈论的特定处理程序有两个参数:

  1. request是来自浏览器的,并包含类的URL,也许饼干,一个IP等信息
  2. 一个response对象。处理程序应从 中获取信息以相应request地填充该response对象。它也可能使用其他信息,如数据库或文件。

例如: Web 浏览器请求http://me.com/index.html. 调用处理程序,查找index.html在根目录中命名的文件。如果找到该文件,则读取该文件,将其附加到response对象并完成处理程序。该wgetsrv框架将完成其余的工作,并将响应发送回现在将看到网站的客户端。

还有许多其他类型的处理程序,例如用于用户输入的处理程序。每次敲击键入的键时都会调用注册的键盘输入处理程序。这允许程序员做出反应并显示文本或调用快捷方式。

处理程序通常用于替换polling.Polling是一种技术,其中程序经常检查某物的状态,以便在状态发生变化时做出反应。继续使用键盘示例。想象一下,您正在使用箭头键在 2D 世界中引导游戏中的玩家。程序怎么知道你要往哪个方向走?它需要检查哪个(如果有)箭头键被按下。为此,它可以获取键盘的状态,检查例如当前是否按下了右箭头键,然后将播放器向右移动一点(如果是这种情况)。但是程序只有在检查键盘后才会知道此更改。因此,为了响应玩家,它必须经常检查键盘状态(每秒几次),这会浪费 CPU 周期,因为大多数时间状态确实没有改变。

现在翻转模型,游戏可以询问键盘:Hey, when a key is pressed, call this function and tell it which keys are pressed。然后该函数可以相应地更新玩家位置 - 但仅在键盘状态发生变化时调用。轮询就像每五分钟给披萨店打电话:“我的订单准备好接受了吗?” 而不是给他打一次电话并告诉他“当我的订单准备好后给我回电”。在后一种情况下,您“为披萨就绪事件注册了一个处理程序”,并为你们俩节省了大量时间。

  • 它们是当事情发生(事件)时调用的函数,以便程序可以做出反应。在您的浏览器中,有一个事件处理程序会为您键入的每个键调用。如果您当前位于堆栈溢出的答案字段中,那么您的击键将最终出现在该文本区域中。但并非所有键都被同等对待。例如,如果您按“ctrl+c”,则输入的不是字符“c”。相反,标记标记的文本将被移动到剪贴板。 (3认同)
  • 这有点像每五分钟给披萨店打电话:“我的订单可以取货了吗?” 而不是打电话给他一次并告诉他“当我的订单准备好时给我回电话”。在后一种情况下,您“注册了披萨准备事件的处理程序”,并为你们俩节省了大量时间。 (2认同)