【发布时间】:2012-02-21 07:25:31
【问题描述】:
在 Python 中是否有一种快捷方式可以连续调用函数两次或更多次?例如:
do()
do()
do()
也许像:
3*do()
【问题讨论】:
-
请注意,
3 * do()是一个有效的 Python 表达式,其结果非常明确:它确实将调用do的返回值乘以 3。但是,可以编写一个装饰器,使人们能够编写诸如 (3 * do)() 之类的东西 - 在stackoverflow.com/questions/8998997/product-of-two-functions/… 有一个答案的变体 -
我来到这里是因为我想知道是否有类似于您建议的方法来执行此操作......但是,它可能不足以保证新的“函数调用乘数运算符”,考虑到使用它而不是 for 循环只能节省大约 17 次击键。
-
在
3*do()这样的编程语言中添加语法糖绝不是一件好事。以后会引起很多问题和问题,更别提在这个语境下有着完全不同的含义了。 -
看到关于语法糖的不同意见总是很有趣。有些人不喜欢它,有些人接受它。我们得到了上面的 python 意见(无论如何都是来自一个声音).. 同时在 ruby 中你有
2.times do {block}(不是试图提出“ruby 更好”的论点,只是注意到不同编码社区如何看待这一点的差异)
标签: python function shortcut sequential