Python 生成器函数名称——前缀有用吗?

发布于 2024-10-03 03:45:30 字数 1431 浏览 8 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

只怪假的太真实 2024-10-10 03:45:30

Python dictsiter* 方法。 lxml 树也有一个 iter 方法。
读起来

for node in doc.iter():

似乎很熟悉,所以
按照这种模式,我会考虑命名 sometypes 的生成器 sometypes_iter
为了让我可以类似地编写,

for item in sometypes_iter():

Python 提供了一个 sorted 函数。
按照这种模式,我可能会将动词函数设置为过去时:

sometypes_reduced
sometypes_mapped
sometypes_filtered

如果您有足够的这些函数,那么创建一个 SomeTypes 类可能是有意义的,这样方法名称就可以缩短为 reduce地图过滤器

如果函数可以泛化为接受或返回 sometype 以外的类型,那么当然从函数名称中删除 sometype 是有意义的,而是选择一个名称强调它的作用而不是类型。

Python dicts have iter* methods. And lxml trees also have an iter method.
Reading

for node in doc.iter():

seems familiar, so
following that pattern, I'd consider naming the a generator of sometypes sometypes_iter
so that I could write analgously,

for item in sometypes_iter():

Python provides a sorted function.
Following that pattern, I might make the verb-functions past tense:

sometypes_reduced
sometypes_mapped
sometypes_filtered

If you have enough of these functions, it might make sense to make a SomeTypes class so the method names could be shortened to reduce, map, and filter.

If the functions can be generalized to accept or return types other than sometype, then of course it would make sense to remove sometype from the function name, and instead choose a name that emphasizes what it does rather than the types.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文