我有一个 python 程序,它修改另一个程序的配置文件,然后调用该程序。另一个程序使用配置文件定义几何形状,然后将特定电压应用于不同的几何元素。我希望能够在命令行上指定应用于命名配置元素的电压。例如,配置文件可以指定一个名为“base”的元素具有 1 伏的电压,而另一个名为“LeftDot”的元素具有 1.4 伏的电压。我想要一个类似于以下的命令:
$ python myprogram.py --config configfile1.txt --base 1.0 --LeftDot 1.4
然而对于另一个配置文件,“base”和“LeftDot”没有定义,而是这个文件使用“LeftNode”和“LowerGate”:
$ python myprogram.py --config configfile3.txt --LeftNode 2.4 --LowerGate 0.6
在查看 argparse 和 optparse 文档时,我看不到能够查找直到运行时我才知道名称的命令行参数的方法(当我打开配置文件时,我可以很容易地看到哪些元素需要对它们施加电压,但仅在运行时。)有没有办法告诉 argparse 将所有它无法识别的东西交给我自己的函数?谢谢您的帮助。