如何使用python快速從物料庫中匹配出BOM里元器件的料號
瀏覽:2404
我們在處整理BOM時,有一件比較麻煩的工作,就是要從物料庫里找到對應的元器件的物料編碼并填入BOM中。我們通常的做法就是在物料庫里每種物料逐一搜索,把對應的元器件的物料編碼找出來,并填到BOM里。這種工作雖然沒什么難度,但是如果BOM的元器件種類很多,有幾百種時,那么這個工作量是非常龐大的,人重復的操作幾百次,很容易出現錯誤。如果用有錯誤的BOM去貼片,那么貼出來的電路板就會存很大的問題,給研發(fā)工作帶來很多不便。如果是生產的BOM出現錯誤,那么就是給公司帶來巨大的經濟損失。那么有沒有一種快捷的方法把物料編碼快速匹配到BOM里,而且沒有錯誤呢?
上次我們使用VBA解決了這個問題,現在我們使用python來解決這個問題。
這是物料庫,里面存放了元器件的規(guī)格描述和料號等信息。現在需要從這個物料庫找出以下BOM中元器件的料號,并一一對應填寫出來。
首先,在pycharm中編寫以下代碼:
import xlwtimport xlrdimport xlutils.copywb1=xlrd.open_workbook('物料庫20200831.xls')wb2=xlrd.open_workbook('bom V01貼片BOM20200828.xlsx')wp=xlutils.copy.copy(wb2)ws3=wp.get_sheet(0)ws1=wb1.sheets()[0]ws2=wb2.sheets()[0]nrow1=ws1.nrowsnrow2=ws2.nrowsprint (nrow1)print (nrow2)for i in range(3,nrow2-1):if ws2.cell(i, 3).value!='':for j in range(1,nrow1-1):#if ws1.cell(j,4).value!='' and ws1.cell(j,4).value==ws2.cell(i,3).value:if ws1.cell(j, 4).value == ws2.cell(i, 3).value:ws3.write(i, 1,ws1.cell(j,0).value)ws3.write(i, 2, ws1.cell(j, 1).value)wp.save('bom V01貼片BOM20200903.xls')
然后,運行代碼,就能得一份新的BOM。里面的元器件已經從物料庫中一一對找到了料號,并寫在了對應的位置里。
關注【電子設計聯盟】后臺回復關鍵字:免費資料
獲取3套4層PCB視頻、10套2-18層PCB高手案例
覺得內容不錯的話,點個在看唄
技術鄰APP
工程師必備
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP
5




















