如何在 Python 中实施规则集
How to implement a ruleset in Python
我处理一个基于列 A 的大型数据集,我想以特定方式处理其他一些列。
如果A列有"processLastNameOnly",那么我只处理LastName。
如果 A 列有 "processMiddleAsFirst",那么我将中间名处理为名字。
等等
这些规则很多而且很复杂,我想以某种最好的标准 "ruleset" 格式将它们保存在一个单独的文件中。
这些规则有没有通用的格式?如何在 Python 代码中使用它?
Python 最酷的一点是一切都是对象,包括函数。因此,您可以创建一个字典,将字符串(在 columnA 中)映射到一个函数。
def processLastNameOnly(...):
pass # process data here
def processMiddleAsFirst(...):
pass # process data here
ruleset = {'processLastNameOnly': processLastNameOnly,
'processMiddleAsFirst': processMiddleAsFirst}
# Call the function from the dict with the appropriate args
ruleset[columnA_value](...)
您可以将规则集和函数存储在单独的文件中,然后像导入任何 Python object/function.
一样导入该文件
您可以查看 this Stack Exchange link 进行深入讨论。
我处理一个基于列 A 的大型数据集,我想以特定方式处理其他一些列。
如果A列有"processLastNameOnly",那么我只处理LastName。 如果 A 列有 "processMiddleAsFirst",那么我将中间名处理为名字。
等等
这些规则很多而且很复杂,我想以某种最好的标准 "ruleset" 格式将它们保存在一个单独的文件中。
这些规则有没有通用的格式?如何在 Python 代码中使用它?
Python 最酷的一点是一切都是对象,包括函数。因此,您可以创建一个字典,将字符串(在 columnA 中)映射到一个函数。
def processLastNameOnly(...):
pass # process data here
def processMiddleAsFirst(...):
pass # process data here
ruleset = {'processLastNameOnly': processLastNameOnly,
'processMiddleAsFirst': processMiddleAsFirst}
# Call the function from the dict with the appropriate args
ruleset[columnA_value](...)
您可以将规则集和函数存储在单独的文件中,然后像导入任何 Python object/function.
一样导入该文件您可以查看 this Stack Exchange link 进行深入讨论。