我有两个列表-列表1有零件号(不唯一)、订单号(空白)、作业号(空白)、颜色和数量字段。列表2包含零件号(唯一)、订单号和作业号字段。我需要根据清单2中的信息填写清单1中的订单号和作业号(通过匹配零件#)
列表1(主列表)
零件#(BM001), 订单#(空), 作业#(空), 颜色(黑色), 数量(2)
零件#(BM001), 订单#(空), 作业#(空), 颜色(红色), 数量(4)
零件#(BM002), 订单#(空), 作业#(空), 颜色(绿色), 数量(5)
列表2(值列表)
零件#(BM001), 订单#(26534), 工作#(75)
零件#(BM002), 订单#(26535), 作业#(76)
所需结果(我只需要列表1,填写订单和工作)
零件#(BM001), 订单#(26534), 工作#(75), 颜色(黑色), 数量(2)
零件#(BM001)、订单#(26534)、工作#(75)、颜色(红色)、数量(4)
零件#(BM002)、订单#(26535)、作业#(76)、颜色(绿色)、数量(5)
这是我迄今为止的代码(见下文),但它与数据不匹配。我假设有一个更简单(更有效)的方法来做这件事,但在这一点上我被卡住了。你知道吗
注意:这在Dynamo/Revit中,它使用Python访问revitapi。你知道吗
先谢谢你。你知道吗
dataEnteringNode = IN
mainlist=IN[0]
valueslist=IN[1]
outlist=[]
for i in mainlist:
#Part #
item0=i[0]
#Order #
item1=""
#Job #
item2=""
#Color
item3=i[3]
#QTY.
item4=i[4]
for j in valueslist:
#Job # and Task #
if ( i[0] == j[0] ):
item1=j[1]
item2=j[2]
#Write Data
outlist.append(item0)
outlist.append(item1)
outlist.append(item2)
outlist.append(item3)
outlist.append(item4)
#Assign your output to the OUT variable.
OUT = outlist
最简单的方法是使用python dict,然后手动将其转换为list
相关问题 更多 >
编程相关推荐