我已经在Python上工作了大约1.5年,并在寻找一些方向。这是我第一次在做了大量搜索后找不到我需要的东西,肯定是遗漏了什么——很可能是搜索错了术语。
问题:我正在开发一个有许多进程的应用程序(可能有数百甚至数千个(。每个进程都可能有一个唯一的输入和输出数据格式,可以是多行字符串、逗号分隔字符串xcel或csv,带或不带不同的标题以及许多其他格式。我需要一些能够正确格式化输入并根据流程处理输出的东西。还需要容易地添加/定义新流程。我对任何最好的方法都持开放态度,但我的想法是使用一个存储模板/数据定义的数据库,并使用它来了解给定流程的格式。然而,如果这真的是最好的方法,但它需要是一个可扩展的解决方案,我很难想出确切的方法。任何指示都将不胜感激。非常感谢。
数据的几个简单例子
处理1示例数据(带标题的多行字符串(的输入
[ABC123, XYZ453, CDE987]
并且将创建下面的结果数据输入:
Barcode
ABC123
XYZ453
CDE987
下面的代码是有效的,但对于示例2来说是不可重用的。
list = [ABC123, XYZ453, CDE987]
input = "Barcode /r/n"
for l in list:
input = input + l + '/r/n'
流程2示例输入模板(逗号与页眉分隔(:
Barcode,Location,Param1,Param2
Item1,L1,11,A
Item1,L1,22,B
Item2,L1,33,C
Item2,L2,44,F
Item3,L2,55,B
Item3,L2,66,P
处理2示例结果输入数据(逗号与标题分隔(:的输入
{'Barcode':['ABC123', 'XYZ453', 'CDE987', 'FGH487', 'YTR123'], 'Location':['Shelf1', 'Shelf2']}
并使用模板创建以下输入数据:
Barcode,Location,Param1,Param2
ABC123,Shelf1,11,A
ABC123,Shelf1,22,B
XYZ453,Shelf1,33,C
XYZ453,Shelf2,44,F
CDE987,Shelf2,55,B
CDE987,Shelf2,66,P
FGH487,Shelf1,11,A
FGH487,Shelf1,22,B
YTR123,Shelf1,33,C
YTR123,Shelf2,44,F
我知道如何使用硬编码循环/数据帧合并等处理每个过程。我在其他情况下使用dict进行了一些抽象。然而,如何定义/存储每种变化如此之大的格式,并创建可重用的抽象代码是我的难点。
也许您可以将函数的输出作为一个元组,键"datatype"one_answers"output"用于实际输出