C#类似于python中的扩展函数
本文关键字:扩展 函数 类似于 python | 更新日期: 2023-09-27 18:33:20
最终会写很多:
lines = [l.strip() for l in lines]
有没有一种可读的 Pythonista 方法来做到这一点,例如:lines.stripped()
返回剥离的行?(在 C# 中,您可以将"扩展方法"添加到字符串列表中)。
不,你不能用猴子修补list
类型。您可以使用此方法创建list
的子类,但这可能是一个糟糕的主意。
捕获经常重复的代码位的 Pythonic 方法是编写一个函数:
def stripped(strings):
return [s.strip() for s in strings]
有 https://github.com/clarete/forbiddenfruit
无论你认为它是可读的,Pythonista 是个人选择。但它确实有效。
我确实希望Python有像CSharp,Kotlin,Scala,Ruby"扩展方法"这样的东西。在那之前,禁果或它使用的技术(可以大大简化)是我知道的唯一方法。