这是我的情况:
我有一个python脚本,将其命名为ID DealerId DealerName
226 1 Dealer3
112 1 Dealer3
266 2 Dealer1
112 2 Dealer1
93 3 Dealer2
93 3 Dealer2
。在此脚本中,可以生成不同类型的数据,等等。当我从命令行运行此脚本时,我希望能够输入“绘图模式”,例如1、2、3等。到目前为止,我知道如何要做到这一点。
但是,我想使用那些绘图模式做的就是卡住了。
本质上,我想说的是,如果绘图模式为1,则执行带有5个子图的特定绘图例程,以某种方式显示特定数据。
如果说绘图模式为2,则执行一个完全不同的绘图例程,使用3种数据类型,以非常特殊的方式显示它们,等等。
我不清楚该怎么做。我想最简单的方法是将绘图模式映射到if / else语句,该语句调用特定函数,但是我想知道是否还有一种更优雅的方法?
谢谢
答案 0 :(得分:0)
您可以使用字典将模式映射为功能
mode = ... # this is the mode you obtain from the call
lookup = {"1" : function1, "2" : function2, ...}
# call function from lookup depending on mode
lookup[mode]()
您还可以通过包含模式名称的字符串获取要调用的函数
locals()["function{}".format(mode)]()
当然,仅当function1
,function2
等都接受相同(或不使用)参数时,此方法才有效。如果要使用不同的参数调用不同的函数,则使用if/else
可能也是一种好方法。